我有两个DataGridView,一个带有产品,另一个带有发票。 发票中包含数据和产品,这些产品是国外参考的产品。
创建DataGridView时,将自动生成BindingNavigator。添加,删除,编辑和保存在数据库中,一切正常。
当我允许我删除发票上显示的产品时,就会出现问题。保存到BD时,会跳出外键错误。
现在,我捕获了删除事件,查询数据库并在发票表中搜索要删除的产品。如果产品在发票表中,我将取消操作并打印一条消息。
是否有任何“内置”方式无需手动进行检查?还是这条路要走? p>
答案 0 :(得分:1)
BindingNavigator可以在删除之前检查关系吗?
不是自动的。您需要手动进行。为此,应在设计器中将DeleteItem
的{{1}}属性设置为BindingNavigator
,然后处理删除项目的click事件。然后,在点击事件处理程序中,使用None
的{{1}}属性,您可以获取当前项目并检查一些条件,如果可以删除该项目,可以通过调用Current
将该项目删除BindingSource
的方法。例如:
RemoveCurrent