0

用途:VS 2012;

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

我们的遗留系统是在Delphi 3 和 5中构建的,用户可以右键单击下拉列表并获得一个类似按钮的小弹出窗口,名为

空白的

哪些空白已选择。我找不到任何与用户在.NET 组合框中选择的内容相同的东西。

4

2 回答 2

3

您可以使用以下代码在dropdown命名(或类似名称)中添加新项目:-Select-

drp.DataSource = dataSet;
drp.DataBind();
// do it after binding
    drp.Items.Insert(0, new ListItem("-Select-", "NA"));

如果你在 xaml 中绑定,那么在page_load事件中你只能写这一行

 drp.Items.Insert(0, new ListItem("-Select-", "NA"));

现在如果用户想取消选择,他/她将简单地选择-Select-项目。

于 2013-07-26T09:12:08.530 回答
0

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

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

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

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 选择/活动时单击Delete键时,它会变为空白。

于 2013-07-26T09:25:56.717 回答