C#/ WinForm:强制DataGrid不要连续添加重复的条目

时间:2010-11-08 04:22:45

标签: c# winforms datagrid combobox row

是否有办法在Windows窗体中“验证”我的数据网格内容,无论它是否是副本?

我的数据网格中有一个组合框,我想要做的是每次添加新行时,用户都会从组合框中选择一个项目。下次用户使用前一个(重复)中的相同条目添加新行时,它将不会添加到该行中。

我在考虑在添加到新行时从组合框(数据库中的数据源)中删除或禁用该项,因此用户将无法复制该记录。

这个问题的最佳方法是什么?欢迎提出意见和建议。谢谢。

3 个答案:

答案 0 :(得分:1)

你打算做正确的事。从组合中删除项目并不是一个坏主意。或者,您可以在添加新行时进行验证,以检查项目是否已存在于网格中。

答案 1 :(得分:0)

由于组合框的数据源来自数据库,为什么不修改查询不要包含表格行中的项目,例如

SELECT item FROM itemList WHERE item not in (SELECT item FROM userAddedRow)

答案 2 :(得分:0)

您可以在数据集中执行检查操作,而不是转到数据库。 从数据集执行检查操作,如果不存在,则发送Insert语句 到DataBase。