您的位置:程序门 -> .net技术 -> vb.net



请问如何让datagridview只能入力数字!


[收藏此页] [打印本页]选择字色:背景色:字体:[][][]


请问如何让datagridview只能入力数字!
发表于:2008-02-16 13:10:39 楼主
如题
发表于:2008-02-17 12:38:481楼 得分:0
全部?
键盘事件过滤就可以了。
发表于:2008-02-18 10:04:592楼 得分:0
vb.net code
'只允许输入数字 private sub txtbox_keypress()sub txtbox_keypress(byval sender as object, byval e as system.windows.forms.keypresseventargs) handles txtbox.keypress if char.isdigit(e.keychar) or e.keychar = chr8) then e.handled = false else e.handled = true end if end sub


不过是textbox的   你可以参考一下!
发表于:2008-02-18 10:20:143楼 得分:0
楼上的中文还是可以输入,呵呵,跟我的一样
发表于:2008-02-18 11:20:394楼 得分:0
嘿嘿   可以设置输入法限制阿   设置imemode   属性
发表于:2008-02-18 17:01:325楼 得分:0
没必要设置输法限制,直接
if   instr("0123456789",e.keychar)> 0   then
.........就ok
发表于:2008-02-22 17:54:356楼 得分:0
参考这个
http://msdn2.microsoft.com/zh-cn/library/ms171619(vs.80).aspx
然后自已重新写个列类型就行了.
发表于:2008-02-22 19:19:037楼 得分:0
用正则表达式,或者控制键盘输入   就行了
发表于:2008-02-22 19:23:178楼 得分:0
正则这么好的东西,怎么不用?
发表于:2008-02-22 23:34:219楼 得分:0
在datagridview_cellvalidating和datagridview_cellvalidated事件里写代码.

private   sub   datagridview_cellvalidating(byval   sender   as   object,   byval   e   as   system.windows.forms.datagridviewcellvalidatingeventargs)   handles   datagridview.cellvalidating
              if   e.columnindex   =   1   then
                                dim   testinteger   as   double
                                me.datagridview.showcellerrors   =   true
                                me.datagridview.showrowerrors   =   true
                                if   me.datagridview.currentrow.isnewrow   then
                                        exit   sub
                                end   if
                                if   not   e.formattedvalue.tostring.length   =   0   then
                                        if   not   double.tryparse(e.formattedvalue.tostring,   testinteger)   then
                                                e.cancel   =   true
                                        end   if
                                end   if
                        end   if
        end   sub

private   sub   datagridview_cellvalidated(byval   sender   as   object,   byval   e   as   system.windows.forms.datagridviewcelleventargs)   handles   datagridview.cellvalidated
                e.cancel   =false
        end   sub


快速检索

最新资讯
热门点击