Le réseau pour les développeurs > Forums - Accueil > Windows Presentation Foundation (WPF) > ListboxItem returning "Object reference not set to an instance of an object." on 1st click
Poser une questionPoser une question
 

TraitéeListboxItem returning "Object reference not set to an instance of an object." on 1st click

  • samedi 4 juillet 2009 23:43spnz Médailles de l'utilisateurMédailles de l'utilisateurMédailles de l'utilisateurMédailles de l'utilisateurMédailles de l'utilisateur
     A du code
    Hi there,
    I have created a listbox inside my data template I have a textblock with the LeftMouseButtonDown event hooked into it. I have a basic little event like this.

    private void txtRewardDescription_MouseLeftButtonDown(object sender, MouseButtonEventArgs e)
            {
                try
                {
                    RewardDetail selectedItem = (RewardDetail)lstAvailableRewards.SelectedItem;
                    MessageBox.Show(string.Format("Selected Reward is - {0}",selectedItem.RewardDescription));
               
                }
                catch (Exception ex)
                {
    
                    MessageBox.Show(ex.Message);
                }
                
            }
    

    Now my problem is the 1st time I click on an item within the list I get the Object reference error however if i press it again I get the details I was expecting.

    What am I doing wrong?

    Thank you

Réponses

  • mercredi 8 juillet 2009 07:49Bruce.ZhouMSFT, ModérateurMédailles de l'utilisateurMédailles de l'utilisateurMédailles de l'utilisateurMédailles de l'utilisateurMédailles de l'utilisateur
     Traitée
    Hi spnz,

    Please make sure there is an item selected in the ListBox before you click the TextBox element. Otherwise the selected item can be null. If you want to prevent this exception, you can check if the selectedItem is null before you decide showing the MessgeBox.

          if(selectedItem!=null)
          {
                    MessageBox.Show(string.Format("Selected Reward is - {0}",selectedItem.RewardDescription));
          }

    If there's any problem, please feel free to contact me.

    Best regards,
    Bruce Zhou
    Please mark the replies as answers if they help and unmark if they don't.

Toutes les réponses

  • mercredi 8 juillet 2009 07:49Bruce.ZhouMSFT, ModérateurMédailles de l'utilisateurMédailles de l'utilisateurMédailles de l'utilisateurMédailles de l'utilisateurMédailles de l'utilisateur
     Traitée
    Hi spnz,

    Please make sure there is an item selected in the ListBox before you click the TextBox element. Otherwise the selected item can be null. If you want to prevent this exception, you can check if the selectedItem is null before you decide showing the MessgeBox.

          if(selectedItem!=null)
          {
                    MessageBox.Show(string.Format("Selected Reward is - {0}",selectedItem.RewardDescription));
          }

    If there's any problem, please feel free to contact me.

    Best regards,
    Bruce Zhou
    Please mark the replies as answers if they help and unmark if they don't.