首页 > 解决方案 > 如何停止 NavigationView 自动关注 AutoSuggest 框?

问题描述

目前,我的主页看起来有点像这样。

<NavigationView IsSettingsVisible="True" PaneDisplayMode="LeftMinimal">
        <NavigationView.AutoSuggestBox>
            <AutoSuggestBox/>
        </NavigationView.AutoSuggestBox>
</NavigationView>

它只是一个带有搜索栏的拆分视图选项卡样式的 NavigationView。

问题是,每当我点击汉堡菜单时,菜单窗格就会打开并自动聚焦在 AutoSuggestBox 上。在台式机上似乎不是什么大问题但是在手机上呢?它弹出一个触摸键盘。这真让人生气(对我来说)。有没有办法阻止它?

我就用这个试过自己...

//Home.xaml
<NavigationView PaneOpening="STOP" IsSettingsVisible="True" PaneDisplayMode="LeftMinimal">
        <NavigationView.AutoSuggestBox>
            <AutoSuggestBox x:Name="search"/>
        </NavigationView.AutoSuggestBox>
</NavigationView>
//Home.xaml.cs
private void mainPanel_PaneOpening(WINUI.NavigationView sender, object args) 
    => search.Focus(FocusState.Unfocused);

它没有工作,因为它引发了错误并崩溃。

而且我还尝试将其移至 PaneOpenned 事件...

private void mainPanel_PaneOpened(WINUI.NavigationView sender, object args) 
    => search.Focus(FocusState.Unfocused);

它仍然崩溃。

标签: c#xamluwpuwp-xaml

解决方案


推荐阅读