我有很多TextBox
个控件。对于每个TextBox
控件,我都会获得text_Changed和key_Press事件。因此,我的Form.cs变得太拥挤了。我的问题是,是否有可能让这个空间更自由?有些事件只包含一个功能。
示例代码:
private void txtItem_TextChanged(object sender, EventArgs e)
{
showButtonSave();
}
private void txtItem_KeyPress(object sender, KeyPressEventArgs e)
{
showButtonSave();
char ch = e.KeyChar;
if (ch == (char)Keys.Enter)
e.Handled = true;
}
private void txtItem2_TextChanged(object sender, EventArgs e)
{
showButtonSave();
}
private void txtItem2_KeyPress(object sender, KeyPressEventArgs e)
{
showButtonSave();
char ch = e.KeyChar;
if (ch == (char)Keys.Enter)
e.Handled = true;
}
答案 0 :(得分:1)
您可以为每种类型(txtItem_TextChanged
/ txtItem_KeyPress
)创建一个事件,并将其映射到所有TextBox。在sender
的帮助下,您可以根据需要获得实际控制和操作。
答案 1 :(得分:1)
在txtItem2
上,您可以转到其属性,并在其中显示ontextchange,您应该看到它设置为txtItem2_KeyPress
将其更改为txtItem_KeyPress
然后它们都会使用
private void txtItem_KeyPress(object sender, KeyPressEventArgs e)
{
showButtonSave();
char ch = e.KeyChar;
if (ch == (char)Keys.Enter)
e.Handled = true;
}