C# winform 输入完了后 textbox控件 触发什么事件比较好???

舞台中央的我 2011-06-15 10:53:24
在 textbox中 我 想输入 商品的 条形码 全部是 数字
有 8位 13位 10位 11位 14位 到16位 的
输入完了后 我想触发事件 把 商品名字 抽出
请问 用什么事件 比较好
???

...全文
8975 24 打赏 收藏 转发到动态 举报
写回复
用AI写文章
24 条回复
切换为时间正序
请发表友善的回复…
发表回复
舞台中央的我 2011-06-15
  • 打赏
  • 举报
回复
字符串的 长度 很多 有 8位 13位 10位 11位 14位 到16位 不好 判断吧
小Fan 2011-06-15
  • 打赏
  • 举报
回复
Text_Changed事件,

判断当前文本框里面字符串的长度
Maa 2011-06-15
  • 打赏
  • 举报
回复 2
用Validated事件吧,个人感觉最好不要用changed事件,因为:
1.你每输入一个字符都会触发一次该事件;
2.如果你输入一个8位数字,恰好第8位输错了,但是只要是数字就仍然会满足输入条件触发一次事件;这时你想修改也得等到触发之后才能改了。

而Validated事件是当textbox得输入生效后才触发得,你自己手工输入,保证输入正常后,敲回车,或者把鼠标在其他位置点一下都可以触发这个事件得,方便一些。

private void textBox1_Validated(object sender, EventArgs e)
{
// do
}
紫川秀 2011-06-15
  • 打赏
  • 举报
回复
Text_Changed事件
  • 打赏
  • 举报
回复
太卡回了2次了
  • 打赏
  • 举报
回复

textBox1.Leave += new EventHandler(textBox1_Leave);

void textBox1_Leave(object sender, EventArgs e)
{
//do
}
  • 打赏
  • 举报
回复
...
textBox1.Leave += new EventHandler(textBox1_Leave);
void textBox1_Leave(object sender, EventArgs e)
{
//do
}
porschev 2011-06-15
  • 打赏
  • 举报
回复

Text_Changed事件。。
garfieldzf 2011-06-15
  • 打赏
  • 举报
回复
Text_Changed事件,

判断当前条码的长度
bdmh 2011-06-15
  • 打赏
  • 举报
回复
onchange,或者输入完回车,keydow事件中处理
Jalan.Wang 2011-06-15
  • 打赏
  • 举报
回复
Validated
  • 打赏
  • 举报
回复
如果你的条形码是手动输入的,最好在Key_Down事件中,敲回车时取商品名
如果你的条形码是扫描进去的,在显示条形码时顺便就取商品名
可以创建一个条形码与商品名的对应关系缓存
636f6c696e 2011-06-15
  • 打赏
  • 举报
回复
+2
[Quote=引用 8 楼 mafangming 的回复:]
用Validated事件吧,个人感觉最好不要用changed事件,因为:
1.你每输入一个字符都会触发一次该事件;
2.如果你输入一个8位数字,恰好第8位输错了,但是只要是数字就仍然会满足输入条件触发一次事件;这时你想修改也得等到触发之后才能改了。

而Validated事件是当textbox得输入生效后才触发得,你自己手工输入,保证输入正常后,敲回车,或者把鼠标在其他位置点一下都可以触发……
[/Quote]
zailushang_ 2011-06-15
  • 打赏
  • 举报
回复
[Quote=引用 7 楼 windsky87 的回复:]
Text_Changed事件
[/Quote]
++
st200316 2011-06-15
  • 打赏
  • 举报
回复
如果只是显示 用Leave事件。
Change_L 2011-06-15
  • 打赏
  • 举报
回复
用Leave事件。
在失去焦点后进行判断。
hoken2020856 2011-06-15
  • 打赏
  • 举报
回复
+1
[Quote=引用 8 楼 mafangming 的回复:]
用Validated事件吧,个人感觉最好不要用changed事件,因为:
1.你每输入一个字符都会触发一次该事件;
2.如果你输入一个8位数字,恰好第8位输错了,但是只要是数字就仍然会满足输入条件触发一次事件;这时你想修改也得等到触发之后才能改了。

而Validated事件是当textbox得输入生效后才触发得,你自己手工输入,保证输入正常后,敲回车,或者把鼠标在其他位置点一下都可以触发……
[/Quote]
chenwei9120 2011-06-15
  • 打赏
  • 举报
回复
同意楼上
wjhgzx 2011-06-15
  • 打赏
  • 举报
回复
用Leave事件。
在失去焦点后进行判断。
donglin0316 2011-06-15
  • 打赏
  • 举报
回复
Text_Changed事件 输个字符就执行不好吧

窗体程序基本都用leave事件的
加载更多回复(3)

110,535

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧