dataGrid 的漏洞
dataGrid绑定一个dataTable后,修改里边的记录值,某个网格输入新值后,不回车,就直接点击保存按钮(将dataTable的数据保存到数据库)后,刚才修改的值就不算录入。
也就是说,在datagrid中输入一个新值必须敲一下回车或点击网格空白处才算是确认修改,这样的漏洞也太大了吧!
请问如何将它设置为不需要这么一个确认而直接修改后台datatable数据的方法呢,是不是datagrid一定要这么用才行的??
如果不行,大家推荐一个好用的网格控件呀,非第三方。ListView可以吗?
问题点数:100、回复次数:8Top
1 楼exboy(kuku)回复于 2004-12-01 09:49:36 得分 1
没有遇到过Top
2 楼Member007()回复于 2004-12-01 09:53:02 得分 0
TO: exboy(kuku)
兄弟,你现在用什么网格控件啊?自己写一个?Top
3 楼wuye(午夜循环(QQ:260968))回复于 2004-12-01 09:57:34 得分 18
你点一下其他格就行了!
这点确实很麻烦。不知道他为什么要这样设计datagrid。
你在程序的事件里面处理一下就行了。呵呵
我就是这样做的Top
4 楼xiaoslong(龙哥)回复于 2004-12-01 10:02:46 得分 5
帮你顶Top
5 楼yblcgw(黑马之王)回复于 2004-12-01 10:08:18 得分 71
这个问题不是漏洞,是dataGrid在输入的时候判断是否失去焦点才算是输入,解决方法是在你的保存Button里面加上一个获取当前焦点的方法,这样dataGrid失去了焦点数据肯定就输入进去了。代码如下:
假设button1是保存按钮的实例,在MouseEnter事件中加入
private void button1_MouseEnter(object sender, System.EventArgs e)
{
button1.Focus();
//下面是你的代码
}Top
6 楼singleflower(诗凡(愿父亲安息))回复于 2004-12-01 10:22:07 得分 5
upTop
7 楼Member007()回复于 2004-12-01 10:33:27 得分 0
哈哈哈。。。问题已经解决了, yblcgw(黑马之王) 兄,你还真行!!!佩服佩服Top
8 楼Member007()回复于 2004-12-01 10:34:08 得分 0
看来不是漏洞,还可以继续用dataGrid哈哈,,谢谢大家,谢谢 yblcgw(黑马之王)Top




