MUXC:Navigation 中是不是不支持 WebView

Posted

技术标签:

【中文标题】MUXC:Navigation 中是不是不支持 WebView【英文标题】:Is WebView not supported in a MUXC:NavigationMUXC:Navigation 中是否不支持 WebView 【发布时间】:2021-11-28 15:27:05 【问题描述】:

所以我需要让页面在我的 UWP 应用程序中有 webviews。当我导航到它们时,我将它们设置在 muxc:NavigationViewItem 中,我能够看到网页加载,但是当我与页面交互时,我根本无法做任何事情。我已将其切换回正常的 NavigationViewItem 并且我这样做了,我与 webview 中的页面交互没有问题。 muxc:NavigationView 不支持 Webview 吗?在这个问题上的任何帮助都意味着全世界,谢谢!

这是在 Webview 中与网页交互不起作用的代码

        <muxc:NavigationView OpenPaneLength="175" 
                         x:Name="NavView" 
                         ItemInvoked="NavView_ItemInvoked" 
                         Loaded="NavView_Loaded" 
                         IsSettingsVisible="True"
                         IsBackButtonVisible="Collapsed">
        <muxc:NavigationView.MenuItems>
            <muxc:NavigationViewItem Icon="Home" Content="Home" Tag="Home" />
            <muxc:NavigationViewItem Content="Create New Report" Tag="CreateNewReport" >
                <muxc:NavigationViewItem.Icon>
                    <BitmapIcon UriSource="./Assets/TestIcon.png" />
                </muxc:NavigationViewItem.Icon>
            </muxc:NavigationViewItem>
            <muxc:NavigationViewItem Icon="Bookmarks" Content="Daily Log" Tag="DailyLog" />
            <muxc:NavigationViewItem Icon="Keyboard" Content="CAD" Tag="CAD" />
            <muxc:NavigationViewItem Icon="Calculator" Content="MULES" Tag="MULES" />
            <muxc:NavigationViewItem Icon="World" Content="MARS Workflow" Tag="MARSWorkflow" />
            <!--<NavigationViewItem Icon="Find" Content="MARS Search" Tag="MARSSearch" />-->
        </muxc:NavigationView.MenuItems>
        <ScrollViewer >
                <Frame Name="ContentFrame" />
            </ScrollViewer>



    </muxc:NavigationView>

允许在 Web 视图中进行交互的代码

<NavigationView OpenPaneLength="175" 
                         x:Name="NavView" 
                         ItemInvoked="NavView_ItemInvoked" 
                         Loaded="NavView_Loaded" 
                         IsSettingsVisible="True"
                         IsBackButtonVisible="Collapsed">
        <NavigationView.MenuItems>
            <NavigationViewItem Icon="Home" Content="Home" Tag="Home" />
            <NavigationViewItem Content="Create New Report" Tag="CreateNewReport" >
                <NavigationViewItem.Icon>
                    <BitmapIcon UriSource="./Assets/TestIcon.png" />
                </NavigationViewItem.Icon>
            </NavigationViewItem>
            <NavigationViewItem Icon="Bookmarks" Content="Daily Log" Tag="DailyLog" />
            <NavigationViewItem Icon="Keyboard" Content="CAD" Tag="CAD" />
            <NavigationViewItem Icon="Calculator" Content="MULES" Tag="MULES" />
            <NavigationViewItem Icon="World" Content="MARS Workflow" Tag="MARSWorkflow" />
            <!--<NavigationViewItem Icon="Find" Content="MARS Search" Tag="MARSSearch" />-->
        <NavigationView.MenuItems>
        <ScrollViewer >
                <Frame Name="ContentFrame" />
            </ScrollViewer>



    </NavigationView>

【问题讨论】:

【参考方案1】:

我可以在我这边重现这个。这是一个已知问题,已在 WinUI Github issues-Unable to Interact with WebView in WinUI 2.6 上报告。

这种行为的原因是导航视图内容区域的四舍五入使其无法交互。因此,作为一种解决方法,请尝试将NavigationViewContentGridCornerRadius 设置为 0。之后,代码就在我这边工作了。

请将以下代码放入您放置 muxc:NavigationView 的页面中。

  <Page.Resources>
    <CornerRadius x:Key="NavigationViewContentGridCornerRadius">0</CornerRadius>
</Page.Resources>

【讨论】:

非常感谢您解决了我的问题! @Pierce_Kennedy437 我的解决方法能帮助您解决问题吗? 是的!你解决了我的问题,非常感谢! 如果我的解决方法有意义,请将marking 视为已接受。

以上是关于MUXC:Navigation 中是不是不支持 WebView的主要内容,如果未能解决你的问题,请参考以下文章

AssemblyScript 是不是支持函数数组?

windows家庭版平台不支持虚拟化的原因?

Entity Framework 6 是不是支持 .NET 4.0?

技术一张表弄清redis和memcached的差异

Typescript(真的)是不是遵循泛型中参数化类型(T、U、V、W)的命名约定?

MYSql 社区版是不是支持 Nosql