从父级wpf访问子控件事件
本文关键字:控件 事件 访问 wpf | 更新日期: 2023-09-27 18:24:59
我有一个名为myControl的用户控件。我已将myControl中另一个名为dialog的用户控件呈现为<uc:dialog x:Name="dialog">
。我在对话框用户控件中有一个名为myButton的按钮。我需要从父级获取myButton的lostfocus事件,即后面的myControl代码。我怎么能拿到?哪种方法最好?
var myButton= dialog.FindName("myButton") as Button;
if (myButton!= null)
{
myButton.LostFocus += myButton;
}
我试过了。但它不起作用。为什么?
您可以在UserControl中定义这样的事件。然后只需注册此活动。
public event EventHandler ButtonLostFocusEvent;
private void Button_LostFocus(object sender, RoutedEventArgs e)
{
EventHandler testEvent = this.ButtonLostFocusEvent;
// Check for no subscribers
if (testEvent == null)
return;
testEvent(sender, e);
}