WinForm中的datagrid,增加一行后,.net认为有了数据修改,如果用户什么都不输入,我却 不是能不能保存的问题,是用户新增一行后,什么都没有输入,这时候应该认为用户没有增加数据,而我用了ROWS.ADD(DR).而rowstate是只读的属性,我没有办法通过设置它改变行属性。 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 哦,你是用rowstate来判断是否执行保存的代码。这也是个问题,不过可以自己设个标志位来判断 我用来判断是否保存的条件是自定义一个变量,而且建议不要在DataGrid中进行数据的增加删除,修改等操作 在DataGrid直接操作数据库你的程序可读性很差,至少有一个中间层,隔离所有的数据库操作, 还没解决啊,其实你也可以用dataSet的getchanges()方法来判断啊if (dt.GetChanges() == null){} 我觉得你在新增行的时候(mydatatable.Rows.Add())就可以对这一行的数据进行验证,如果是“null”,就不能在表中增加行的。这样就可以保证只要在表中新增一行就可以进行数据保存的。 在你新增一行纪录时,dataset中的datatable就有一行,其中这一行的id应该有值的(如果你这表没有id的话,我认为会出错)。这时如果你什么也不输入直接关闭,我认为它应该提示保存才正确,因为已经多了一行,虽然其他的列没有值,但至少id有值。所以我觉得你应该通过其他判断方法。 判断dr有没有添加到dataset如果添加成功dr=nothing如果没有成功添加则dataset.tables(0).rows.remove(dr),dr=nothing Winform+Http协议,求讲解! DataGrid怎么修改单元格中文本的颜色? 问一个函数重载的问题 水晶报表工具栏无效!谢谢在线等 请问如何组combox加拉列表中加treeview,谢谢了! C#获取网站ip(高手请帮忙一下 多谢) 求解密(解码) 关于DataView的问题,谢谢 急!继承DataGrid之后,为什么出现DataSource未定义的错误?在线等待! 关于sum的小问题 如何保存软件属性设置问题!! WinForm程序高级话题!窗体继承的利与弊!!!
这也是个问题,不过可以自己设个标志位来判断
而且建议不要在DataGrid中进行数据的增加删除,修改等操作
至少有一个中间层,隔离所有的数据库操作,
if (dt.GetChanges() == null)
{
}
如果没有成功添加则dataset.tables(0).rows.remove(dr),dr=nothing