对象引用未设置为对象的实例c#

时间:2011-11-04 03:56:57

标签: c# wpf visual-studio-2008 listbox

我有一个列表框,我正在尝试选择一个项目来显示标签。我的代码如下:

private void listBox2_MouseDown(object sender, MouseButtonEventArgs e)
    {

        ListBox lb = (ListBox)sender;

        var selected = lb.SelectedValue.ToString();
        //string selected = listBox2.SelectedItem.ToString();

        label5.Visibility = Visibility.Visible;

        if (selected.ToString() == "Study Date")
        {
            label5.Content = "Format:YYYYMMDD";

        }

        if (selected.ToString() == "Patient's Name") label5.Content = "Enter name in string format.";
     }

但是当我点击某个项目时,我收到的错误为:Object reference not set to instance of an object。我无法在Selection change事件中输入代码,所以请告诉我如何才能解决这个问题。谢谢!

2 个答案:

答案 0 :(得分:1)

这里有一个潜在的问题:

var selected = lb.SelectedValue.ToString();

即使SelectedValue可以是ToString()

,您也在呼叫null

在致电ToString()之前,请确保SelectedValue不是null

答案 1 :(得分:1)

IIRC MouseDown()事件在注册选择之前触发。你最好不要使用SelectionChanged()活动吗?