其实原因很简单,PointerPressed的时候确实把焦点设置到了t3上,但是我们在PointerReleased的时候又将焦点弄回来了。 而Button的Click事件的顺序就不同了,他是在PointerReleased后再被调用所以你可以成功转移焦点。
一个想法你可以考虑是否可以采纳:
通过实现 PointerReleased 事件,在其中设置焦点,然后将路由事件打断:
private void Canvas_PointerReleased_1(object sender, PointerRoutedEventArgs e)
{
t3.Focus(FocusState.Keyboard);
e.Handled = true;
}
Bob Bao [MSFT]
MSDN Community Support | Feedback to us
