以文本方式查看主题

-  Foxtable(狐表)  (http://www.foxtable.com/bbs/index.asp)
--  专家坐堂  (http://www.foxtable.com/bbs/list.asp?boardid=2)
----  [求助]TextChanged  (http://www.foxtable.com/bbs/dispbbs.asp?boardid=2&id=75845)

--  作者:huhu
--  发布时间:2015/10/15 17:42:00
--  [求助]TextChanged
文本框绑定了某个字段。希望输入超过15个字符,报错msgbox,自动截取前15位,并且光标锁定到最后一位。
TextChanged代码:
If e.Sender.Text.Length > 15 Then
MessageBox.Show("产品化编号最大支持15个字符,请检查","提醒助理",MessageBoxButtons.OK,MessageBoxIcon.Error)
End If

--  作者:大红袍
--  发布时间:2015/10/15 17:45:00
--  
If e.Sender.Text.Length > 15 Then
    MessageBox.Show("产品化编号最大支持15个字符,请检查","提醒助理",MessageBoxButtons.OK,MessageBoxIcon.Error)
    e.sender.text = e.sender.text.SubString(0,15)
    e.Sender.SelectionStart = e.Sender.text.Length
End If

--  作者:huhu
--  发布时间:2015/10/15 17:54:00
--  
以下是引用大红袍在2015/10/15 17:45:00的发言:
If e.Sender.Text.Length > 15 Then
    MessageBox.Show("产品化编号最大支持15个字符,请检查","提醒助理",MessageBoxButtons.OK,MessageBoxIcon.Error)
    e.sender.text = e.sender.text.SubString(0,15)
    e.Sender.SelectionStart = e.Sender.text.Length
End If
给我感觉手工输入还好。一旦是复制20个字符到这个文本框,那就要弹出5次msgbox。


--  作者:大红袍
--  发布时间:2015/10/15 17:57:00
--  

换一种提示

 

If e.Sender.Text.Length > 15 Then
    e.sender.ShowToolTip("产品化编号最大支持15个字符,请检查")
    e.sender.text = e.sender.text.SubString(0,15)
    e.Sender.SelectionStart = e.Sender.text.Length
End If


--  作者:Hyphen
--  发布时间:2015/10/15 17:58:00
--  
不如直接设置文本框的最大长度