ComboBox选择的值为空

时间:2013-07-26 08:54:45

标签: c# winforms

用途:VS 2012;

我的表格中附有一个数据源的组合框。事情很好。当我运行表单时,一切正常;我可以在下拉列表中选择一个项目,它也会更新到数据源。当我保存或删除我选择的内容(基本上应该为 null 为该字段值)时,我需要取消选择/还原我选择的内容时出现问题。

我们的遗留系统内置于 Delphi 3& 5 ,用户有一个右键单击下拉列表的功能,并获得一个小按钮,如名为

的按钮
  

空白

将所选内容空白。我找不到任何用户在.NET的组合框中选择的内容。

2 个答案:

答案 0 :(得分:3)

您可以使用以下代码在名为dropdown的{​​{1}}(或类似名称)中添加新项目:

-Select-

如果您在xaml中绑定,那么在drp.DataSource = dataSet; drp.DataBind(); // do it after binding drp.Items.Insert(0, new ListItem("-Select-", "NA")); 事件中,您只能写这一行

page_load

现在,如果用户想取消选择,他/她只需选择 drp.Items.Insert(0, new ListItem("-Select-", "NA")); 项。

答案 1 :(得分:0)

在感谢你所有的答案和建议的同时,我使用了@ V4Vendetta的想法并编写了我的解决方案。

与删除数据网格视图中您单击 删除 键的记录类似,我采用相同的概念并将我的解决方案与 删除 键。

我所做的是为ComboBox的Keypress事件创建了一个处理程序,如:

private void comboBox_KeyPress(object sender, System.Windows.Forms.KeyEventArgs e)
{
    if (e.KeyCode == Keys.Delete)
    {
            (sender as ComboBox).SelectedIndex = -1;    
    }
}

并链接到每个ComboBox的可用

ComboBox1.KeyDown += new KeyEventHandler(comboBox_KeyPress);
ComboBox2.KeyDown += new KeyEventHandler(comboBox_KeyPress);

现在,当用户在选择/激活ComboBox时单击 删除 键时,它将变为空白。