用途:VS 2012;
我的表格中附有一个数据源的组合框。事情很好。当我运行表单时,一切正常;我可以在下拉列表中选择一个项目,它也会更新到数据源。当我保存或删除我选择的内容(基本上应该为 null 为该字段值)时,我需要取消选择/还原我选择的内容时出现问题。
我们的遗留系统内置于 Delphi 3& 5 ,用户有一个右键单击下拉列表的功能,并获得一个小按钮,如名为
的按钮空白
将所选内容空白。我找不到任何用户在.NET的组合框中选择的内容。
答案 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时单击 删除 键时,它将变为空白。