【问题标题】:How to set focus to an element inside of user control on UWP?如何将焦点设置到 UWP 用户控件内的元素?
【发布时间】:2019-09-23 07:19:30
【问题描述】:

我创建了自己的UserControl,在其中放置了一个ListView。但是当我将UserControl 设置为显示时,我无法将焦点设置为ListViewItem。焦点仍在原始页面中。

关于如何显示我的UserControl,我使用Popup

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

【问题讨论】:

标签: xaml uwp user-controls uwp-xaml


【解决方案1】:

ListView 已加载到可视化树中并准备好进行交互时,就会为 ListView 设置焦点。

我们假设你创建了一个包含ListViewUserControl,那么为ListView设置焦点的方法应该在UserControl_LoadedListView_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);
}

最好的问候。

【讨论】:

  • 谢谢。终于知道了,是我ItemContainerStyle的问题。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2017-01-21
  • 2020-03-27
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2022-07-18
  • 1970-01-01
相关资源
最近更新 更多