Winfrom下的datagridview的空白行中的某可编辑列输入一值然后(根据改值从数据库某表中检索相关数据插入到datagridview数据源中并显示)麻烦帮忙解决下!
我是实际问题是
有2个列是 可编辑的 然后 我在某列输入一个值后 检索数据表的 数据 有 匹配的 就查询出来!并添加显示!之前没显示是因为 字段 [状态] 值不满足
现在有 就修改其状态值 为满足情况 并显示!
如果没有就 直接 在 其他列(数据库其他字段)插入默认值(或直接随便插入满足约束的值)

解决方案 »

  1.   

    CellValidating 事件 或则 CellValidated 事件
    先判断当前列是要判断的列
    再检索数据表的 数据 有 匹配的 就查询出来
    不匹配的 就撤销操作 datagridview.canceledit
      

  2.   

    我的列是可编辑的哦 !而且编辑的话输入值都需要验证!这样的话列的 CellValidating 事件 或则 CellValidated 事件  是不是会冲突啊!
    而且我的 编辑后是直接就 提示保存的 当安了 提示框的确认按钮时 就直接 数据库修改了! 请问这写事件 在一起 是不是 冲突啊!好烦哦!努力学习中!!!!!!
      

  3.   

    为什么不做成双击出来编辑窗口的模式呢~?想请问你是怎么验证呢?一般就是要求用户从下拉列表中选择值填写,而且DataGridView里面的Combobox是可以设成DropDown并且能自动联想的形式的。
    这样就可以省去验证的烦恼,因为用户输入如果不在下拉范围内,会触发DataError事件的。而你希望在用户改变值以后就做些事件,你完全可以写ComboBox的SelectedIndexChanged事件。所以我觉得你的设计做得不好,不应该用TextBox让用户任意输入而又做复杂验证。
    至于提交数据库,像这种要求即时更新的项目,可以每次行验证成功就更新数据库即RowValidated完以后就根据DataTable中行的RowState状态去更新数据库。
    我们的项目就是这么要求的
      

  4.   

    说实话,datagridview在winform下编辑不是很好控制,比较麻烦,不过我建议你看一些比较成熟的方案试试,或许有帮助,这些网上都有的。