我正在尝试使用以下代码行通过代码将RoutedEventHandler
添加到所有TextBoxes
:
this.AddHandler(TextBox.GotFocusEvent, new RoutedEventHandler(textBox_GotFocus));
上面的代码将处理程序绑定到窗口上的所有窗体控件,而不是单独的文本框。请有人可以
- 解释为什么会发生这种情况
- 以及如何正确地做到这一点。
谢谢。
可能不完全是你所追求的,因为它仍然会在每个 UIElement 上触发。 但是,您可以执行以下操作以获得所需的"最终结果"。
public void textBox_GotFocus(object sender, RoutedEventArgs e)
{
var textBox = e.Source as TextBox;
if (textBox == null)
return;
//what ever you wanted to do
}