我有這個需求,當我需要在用戶按下tab時將第一個元素集中在擴展器內部。把焦點放在擴展器內部的一個組件
目前(默認行爲)的重點轉到擴展,我已經試過在擴張這樣創造一個焦點事件處理程序來關注擴展的第一個元素:
private void ExpanderGotFocus(object sender, RoutedEventArgs e)
{
var expander = (Expander) sender;
if (!expander.IsExpanded)
{
expander.IsExpanded = true;
this._someText.Focus();
}
}
哪個沒有按」工作。
我也試圖給焦點的下一個元素:
var tRequest = new TraversalRequest(FocusNavigationDirection.Next);
var keyboardFocus = Keyboard.FocusedElement as UIElement;
keyboardFocus.MoveFocus(tRequest);
但只適用我已經試過第二次(當擴展已經至少打開一次)
把它放在一個線索和其他一些瘋狂的想法。
我該如何關注第一個元素裏面的擴展器? (第一次擴關閉)
請在此文章中包含此處所需的步驟說明,否則可能會被刪除爲[「未回答」](http://meta.stackexchange.com/q/8259)。如果您願意,您可能仍然包含鏈接,但僅作爲「參考」。 –