这是我的第一个真实的的项目在C#与windows窗体,我想知道如果输入到我的文本框的字母数量是上级11,所以我用
if (e[10] != null)
但我很快意识到这只适用于字符串,而“e”不是字符串,而是“EventArgs”类型。有没有办法从它那里得到一个字符串?
daupos2t1#
并非所有的事件参数都有用;通常,有用的事件是那些特殊类型的事件,如MouseEventArg或FormClosingEventArgs,它们携带关于事件的一些有用信息,如鼠标被点击的点,或窗体如何关闭等。所以在这里,你不需要把事件参数转换成字符串,也不需要从中读取任何东西,你要找的信息并不存在。在许多情况下,您只需要来自控件的信息,例如这里您对输入长度感兴趣,因此无论您使用的是哪个事件处理程序(Button的Click事件,或者TextBox的TextChanged事件)你可以检查你的TextBox的属性。这里假设textBox1是你感兴趣的,只需要检查它的Text属性的长度,如下所示:并在长度超过预期时显示一条“友好”验证消息:
textBox1
if(textBox1.Text.Length >10) { MessageBox.Show("More than 10 characters?!Why?! 😡"); }
一些简要说明:
e
var btn = (Button)sender;
textBox1.Text
1条答案
按热度按时间daupos2t1#
并非所有的事件参数都有用;通常,有用的事件是那些特殊类型的事件,如MouseEventArg或FormClosingEventArgs,它们携带关于事件的一些有用信息,如鼠标被点击的点,或窗体如何关闭等。
所以在这里,你不需要把事件参数转换成字符串,也不需要从中读取任何东西,你要找的信息并不存在。
在许多情况下,您只需要来自控件的信息,例如这里您对输入长度感兴趣,因此无论您使用的是哪个事件处理程序(Button的Click事件,或者TextBox的TextChanged事件)你可以检查你的TextBox的属性。这里假设
textBox1
是你感兴趣的,只需要检查它的Text属性的长度,如下所示:并在长度超过预期时显示一条“友好”验证消息:一些简要说明:
e
的属性以查看是否有任何有用的内容var btn = (Button)sender;
一样使用它。textBox1.Text