我想请你帮忙。 我动态创建了很多文本框,并且正在使用 LostFocus 事件 (C#)。
是否可以通过传递文本框的数字ID来创建事件?
类似的东西
(object sender,EventArgs,int ID)
和
tbx.LostFocus+= EventHandler(MySubFunction(3)?? --3 is my ID of textbox
谢谢您的帮助,我迷失了方向 我不知道如何添加任何号码到
EventHandler
通话
如果您使用的是 winforms,您可以使用
Tag
属性来区分不同的控件:
var textbox = new TextBox();
textbox.Tag = 42;
textbox.LostFocus += TextboxLostFocus;
...
void TextboxLostFocus(object sender, EventArgs e){
if(sender is TextBox txtBox && txtBox.Tag is int textboxNum){
// use textboxNum
}
}
或者您可以使用 lambda 表达式通过内置数字注册您的事件:
var textbox = new TextBox();
textbox.LostFocus += (o, e) => TextboxLostFocus(42);
...
void TextboxLostFocus(int textboxNum){
// use textboxNum
}