我有DataGridView
AllowUserToAddRows
= true。第一列是Id字符串,必须是唯一的。检查用户输入的ID之前没有输入的最佳方法是什么?
答案 0 :(得分:1)
挂钩到CellEndEdit事件,并在处理程序中使用事件参数来确定a)这是一个新行,b)它是ID列。如果是这样,请使用BackgroundWorker(或类似的背景技术)查询您的数据,以查看此值是否唯一。如果不是,那么可能让用户看到标签通知他们冲突是最不突兀的行为,并且不要让新行提交。
答案 1 :(得分:0)
您可以使用jquery执行ajax调用来检查数据库中的值。或者您可以使用GUID自动为它们创建ID。
编辑我刚看到你正在使用Windows窗体...可能无法使用jQuery :)我会去GUID。您还可以将onBlur事件附加到文本框,并让它检查您的数据库以确保它不存在。