Xaml 单击按钮时如何强制LostFocus
XAML C#而不是网页是一个窗口 点击按钮I:Xaml 单击按钮时如何强制LostFocus,xaml,Xaml,XAML C#而不是网页是一个窗口 点击按钮I: 需要在焦点上捕获最后一个控件的名称 强制控件的LostFocus事件 //问题:单击BTN不会对最后输入的元素控件强制执行lostfocus事件(最后输入的控件可以是文本、复选框或其他) 添加了“保存”按钮,在该按钮中,调用该方法会将焦点移动到父元素,强制在最后一个元素上丢失焦点 private void btnSave_Click(object sender, RoutedEventArgs e) { Accep
LostFocus
事件//问题:单击BTN不会对最后输入的元素控件强制执行lostfocus事件(最后输入的控件可以是文本、复选框或其他) 添加了“保存”按钮,在该按钮中,调用该方法会将焦点移动到父元素,强制在最后一个元素上丢失焦点
private void btnSave_Click(object sender, RoutedEventArgs e)
{
AcceptLastFocusedElement(sender, e);
}
private void AcceptLastFocusedElement(object sender, RoutedEventArgs e)
{
FocusManager.SetFocusedElement(this, (Button)sender);
}
注意:不需要任务编号1(获取元素名称)。您可以使用
LayoutUpdated
方法
因此,无论何时发生任何事件,它都会进入
LayoutUpdated
事件,您可以捕获LastFocusObject
这是有效的。。。但并非总是如此。我有一个例子,在我们第二次运行这段代码时,它不会因为FocusGroup而导致lostfocus。这个答案解决了我的具体问题。我很高兴我们缩小了这些问题的范围!。