0

我想在我的 Metro 应用程序中制作一个设置面板。

我添加了一个带有 webview 的主页,如下所示:

<Page
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:local="using:App"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
x:Class="App.MainPage"
mc:Ignorable="d">

<Grid Background="{StaticResource ApplicationPageBackgroundThemeBrush}">
    <WebView x:Name="MainWebView"/>
</Grid>

并使用此代码显示我的 popip 窗口

   _settingsPopup = new Popup();
        _settingsPopup.Closed += OnPopupClosed;
        Window.Current.Activated += OnWindowActivated;
        _settingsPopup.IsLightDismissEnabled = true;
        _settingsPopup.Width = _settingsWidth;
        _settingsPopup.Height = _windowBounds.Height;

        SettingsPanel mypane = new SettingsPanel();
        mypane.Width = _settingsWidth;
        mypane.Height = _windowBounds.Height;

        _settingsPopup.Child = mypane;
        _settingsPopup.SetValue(Canvas.LeftProperty, _windowBounds.Width - _settingsWidth);
        _settingsPopup.SetValue(Canvas.TopProperty, 0);
        _settingsPopup.IsOpen = true;

但是,最后弹出窗口无法显示,当我将 webview 设置为隐藏时,我发现 webview 后面的弹出窗口。

我找不到任何函数或属性来设置 zindex 或 zindex 之类的东西来帮助我将弹出窗口放在前面。

我怎样才能使它正确?

4

1 回答 1

1

该行为是设计使然,因为WebView它将始终占据最高位置。推荐的解决方案是在弹出窗口时隐藏WebView,或者在WebViewBrush显示弹出窗口时将 用作占位符。

网上有很多教程,我个人推荐这篇文章: 如何在WebView的顶部显示魅力

于 2013-03-25T17:02:59.433 回答