C#自动清除Winform文本框

5
我有一个用户希望能够选择文本框并选择当前文本,以便无需全部突出显示即可更改内容。
当按下回车键时,需要处理文本框中的内容。我想我已经搞清楚了这部分,但欢迎任何建议。
我需要帮助的那部分是,一旦按下回车键,对文本框进行的任何输入都应再次清除内容。
编辑:文本框控制RF硬件的一部分。用户想要做的是输入设置并按回车键。设置被发送到硬件。用户不想做其他任何事情,只需输入新的设置并再次按回车键即可。
2个回答

4

在文本框上挂接KeyPress事件,当遇到回车键时,运行硬件设置代码,然后再次突出显示文本框的全文(见下文)- Windows会在下一个按键时自动清除文本。

TextBox1.Select(0, TextBox1.Text.Length);

1

好的,你确定这样做明智吗?我在想象两种情况:

  1. 表单上有一个默认按钮,当按下回车键时,“点击”该按钮。
  2. 没有默认按钮,你希望用户必须按下回车键。

这两种情况都引发了同样的问题:

  • 文本上是否有任何验证?
  • 为什么不创建一个用户控件来封装这个逻辑?
  • 如果你知道回车键被按下并且正常消耗,那么你如何遇到 TextBoxName.Text = string.Empty 的问题?

另外,作为一个礼貌的提醒,你能否请尝试把你的问题分成几个部分?一个大块的问题阅读起来有点困难。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接