当前位置:编程学习 > C#/ASP.NET >>

vb.net文本框如何只能输入某个区间的值?

vb.net文本框如何只能输入某个区间的值?例如只能输入变量a到变量b之间的值
变量a为0 变量b为100
当输入101时由于已经大于100,这时文本框中只能为10,多出来的1不让输入,如何将101的多出来的一个1完全屏蔽掉不让输入呢? --------------------编程问答-------------------- 在 TextChanged 事件里判断,并替换。 --------------------编程问答--------------------
引用 1 楼 fangxinggood 的回复:
在 TextChanged 事件里判断,并替换。

正解+1 --------------------编程问答-------------------- 只能在change事件中check,如果超过100就把最后一位替换成空值 --------------------编程问答-------------------- 这是一段文本框只允许输入数字的代码,你要控制值大小可以在这里改

Public Sub OnlyInputNumeric(ByVal sender As System.Object, ByVal e As System.Windows.Forms.KeyPressEventArgs)
        If Not Char.IsDigit(e.KeyChar) _
            And e.KeyChar <> Chr(8) _
            And e.KeyChar <> Chr(9) _
            And e.KeyChar <> Chr(13) _
            And e.KeyChar <> Chr(15) _
            And e.KeyChar <> Chr(19) _
            And e.KeyChar <> Chr(24) _
            And e.KeyChar <> Chr(4) _
            And e.KeyChar <> Chr(5) _
            And e.KeyChar <> Chr(3) _
            And e.KeyChar <> Chr(22) _
            And e.KeyChar <> Chr(24) _
            And e.KeyChar <> Chr(7) _
            And e.KeyChar <> Chr(127) _
            Then

            e.Handled = True

        End If
        '尝试这里进行判断值大小
         If CInt(TextBox1.Text)>100 Then
            e.Handled = False
        End If
    End Sub
Private Sub TextBox1_KeyPress(ByVal sender As System.Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles TextBox1.KeyPress
        OnlyInputNumeric(sender, e)
    End Sub
--------------------编程问答--------------------
引用 2 楼 tosp2012 的回复:
引用 1 楼 fangxinggood 的回复:
在 TextChanged 事件里判断,并替换。

正解+1

如果在textchange事件里判断的话,那我怎么使用e.handled呢?我怎么屏蔽其他的按键也不让输入呢,所以不是我想要的 --------------------编程问答--------------------
引用 5 楼 archibald385 的回复:
如果在textchange事件里判断的话,那我怎么使用e.handled呢?我怎么屏蔽其他的按键也不让输入呢,所以不是我想要的

你要它只让输入数字的吗?用个数字控件喽。再在控件中设置下格式,让它只能输入3位数字,然后再搞个textchange呗。
补充:.NET技术 ,  VB.NET
CopyRight © 2022 站长资源库 编程知识问答 zzzyk.com All Rights Reserved
部分文章来自网络,