Как установить фокус на элемент внутри пользовательского контроля на UWP? - PullRequest
0 голосов
/ 23 сентября 2019

Я создал свой UserControl, внутри него я поместил ListView.Но когда я устанавливаю UserControl для показа, я не могу установить фокус на ListViewItem.Фокус все еще на исходной странице.

Для того, чтобы показать мои UserControl, я использую Popup.

Popup popup = new Popup();
popup.Child = this;
popup.IsOpen = true;

1 Ответ

1 голос
/ 23 сентября 2019

Установка фокуса для ListView происходит, когда ListView загружен в визуальное дерево и готов к взаимодействию.

Мы предполагаем, что вы создали UserControl, который содержит ListView, то способ установки Фокуса для ListView должен быть выполнен в событии UserControl_Loaded или ListView_Loaded .

public PopupControl()
{
    this.InitializeComponent();
    // Data init
    var _popup = new Popup();
    _popup.Child = this;
    _popup.IsOpen = true;
}

private void UserControl_Loaded(object sender, RoutedEventArgs e)
{
    TestListView.Focus(FocusState.Keyboard);
}

С наилучшими пожеланиями.

...