ComboBox.Selected Value返回Null

时间:2017-01-10 18:20:13

标签: c# winforms visual-studio data-binding

我在ComboBox.SelectedValue遇到问题,即使我有值NullReferenceException。我关闭程序后得到此错误它将值设置为null我相信,因为当我运行它,它工作正常我可以从组合框中选择,但当我关闭,我得到该错误。  我将comboBox与数据绑定模式(图像-A1)连接起来。这是我的代码,希望你能帮忙

    private void comboBox_SelectedIndexChanged(object sender, EventArgs e)
    {
        if (comboBox.SelectedValue == null)
        {
            MessageBox.Show("NULL");
        }
        else
        {

            label2.Text = comboBox.SelectedValue.ToString();
        }
   }

这是我使用的查询,如果有帮助

 SELECT Company, Code FROM Companys ORDER BY Code

enter image description here

3 个答案:

答案 0 :(得分:0)

我认为你正在访问错误的组合框值,

应该是

 private void comboBox2_SelectedIndexChanged(object sender, EventArgs e)
    {
        if (comboBox2.SelectedValue == null)
        {
            MessageBox.Show("NULL");
        }
        else
        {    
            label2.Text = comboBox2.SelectedValue.ToString();
        }
   }

答案 1 :(得分:0)

您正在NULL中检查comboBox2,然后尝试从comboBox1写入值。据推测,comboBox1 SelectedValueNULL

答案 2 :(得分:0)

试试这个

private void comboBox_SelectedIndexChanged(object sender, EventArgs e)
{
    // Might work
    if (this.IsDisposed)
        return;

    // Or this
    if (comboBox == null)
        return;

    if (comboBox.SelectedValue == null)
    {
        MessageBox.Show("NULL");
    }
    else
    {
        label2.Text = comboBox.SelectedValue.ToString();
    }
}

如果表格被处理,它应该跳过例行程序。您也可以尝试检查组合框本身,因为它应该继承自Control