所有TextBox的一个事件

我在WPF C#中做了一个简单的程序,我有很多TextBox – 每个TextBox做同样的事情,我很懒,为每个TextBox编写每个事件。 那么,有没有办法如何通过一个事件服务所有TextBox

有一个简短的代码:

 private void OnMouseLeft(object sender, MouseButtonEventArgs e) { TextBox1.Text = string.Empty; TextBox1.Foreground = Brushes.Black; } private void OnMouseLeft1(object sender, MouseButtonEventArgs e) { TextBox2.Text = string.Empty; TextBox2.Foreground = Brushes.Black; } 

谢谢! 🙂

将相同的处理程序附加到所有文本框并使用sender参数获取引发事件的文本框实例:

 private void OnMouseLeft(object sender, MouseButtonEventArgs e) { TextBox textBox = (TextBox)sender; textBox.Text = String.Empty; textBox.Foreground = Brushes.Black; } 
 private void OnMouseLeft(object sender, MouseButtonEventArgs e) { (sender as TextBox).Text = string.Empty; (sender as TextBox).Foreground = Brushes.Black; } 

‘sender’参数将是TextBox本身。 所以只需编写一个函数并将它们全部附加到该函数。

 private void OnMouseLeft(object sender, MouseButtonEventArgs e) { var textBox = (TextBox)sender; textBox.Text = string.Empty; textBox.Foreground = Brushes.Black; } 

您可以将多个事件分配给同一个事件处理程序。 这些事件可以来自相同的控件和/或不同的控件。

  TextBox t = new TextBox(); t.MouseLeftButtonUp += new MouseButtonEventHandler(OnMouseLeft); t.MouseLeftButtonDown += new MouseButtonEventHandler(OnMouseLeft); TextBox t2 = new TextBox(); t2.MouseLeftButtonUp += new MouseButtonEventHandler(OnMouseLeft); 

然后你只需通过强制转发发件人来处理哪个文本框。

((TextBox)sender).Property = value;

将每个taxBox添加到同一个方法,然后单击如图所示单击TextBox,我没有这个,但它应该工作或至少让你朝着正确的方向前进。 我跳它有帮助。

 textBox.MouseClick += new MouseEventHandler(textBox_MouseClick); private void textBox_MouseClick(object sender, MouseEventArgs e) { if (e.Button == System.Windows.Forms.MouseButtons.Left) { TextBox textBox = sender as TextBox; textBox.Text = string.Empty; textBox.Forground = Brushes.Black; } } 

尝试这个所有文本框不允许数值仅文本..

$('input[type=text]') .keydown(function (e) {
if (e.shiftKey || e.ctrlKey || e.altKey) { e.preventDefault(); } else { var key = e.keyCode; if (!((key == 8) || (key == 32) || (key == 46) || (key >= 35 && key <= 40) || (key >= 65 && key <= 90))) { e.preventDefault(); } } });

 TextBox T = (TextBox)sender; 

您可以使用发件人