如何将多列组合框的第一个元素放入网格视图中?

How to get the first element of multicolumn combo box into grid view?

我正在使用 telerik 网格视图 多列组合框

我想获取组合框的第一个元素并将其插入到网格视图的第一个单元格中,然后将其插入到数据库中

当我 select 组合框元素

时出现 运行 时间错误

Object reference not set to an instance of an object

这是它出现的地方(在最后一行)

    {
        Application.EnableVisualStyles();
        Application.SetCompatibleTextRenderingDefault(false);
        Application.Run(new Form1());
    }

这是导致此 运行 时间错误的我的代码

private void radMultiColumnComboBox3_SelectedIndexChanged(object sender, EventArgs e)
    {
        string text;
        text = radMultiColumnComboBox3.SelectedValue.ToString();
        radGridView1.Rows.Add(Text);
    }

首先,组合框的第一个元素不一定在SelectedValue中。

text = radMultiColumnComboBox3.SelectedValue.ToString(); //this doesn't get the first value

顾名思义,SelectedValue是组合框的选中值,不是它的第一个元素。

其次,您的 ComboBox 而不是 可能具有选定的值并具有 SelectedValue == null。因此SelectedValue.ToString()无法执行。

要查看 ComboBox 是否有项目,请使用 Items.Count

if (radMultiColumnComboBox3.MultiColumnComboBoxElement.Rows.Count > 0){
    //do something, item exists
    //check also SelectedIndex of the combo box, if it is == -1, nothing is selected
} else {
    //This combobox does not have any item
}

关于获取第一个元素,你可以这样做,

var item = radMultiColumnComboBox3.MultiColumnComboBoxElement.Rows[0]; //item is the first element, provided the count > 0