【问题标题】:windows 8 combobox hides behind WebViewWindows 8 组合框隐藏在 WebView 后面
【发布时间】:2013-04-24 16:29:49
【问题描述】:

我有一个包含多个项目的网格视图。

每个项目都是一个 Webview。现在我的问题是我在 GridView 上方有一个 ComboBox。当我选择组合框时,下拉菜单隐藏在 GridView 项目(即 Webview)后面。现在我不能使用 WebViewBrush,因为我在网格视图中有多个 WebView 项目。有什么建议吗?

【问题讨论】:

    标签: c# winrt-xaml


    【解决方案1】:

    XAML UI 总是在 WebView 窗口后面 - 这是一个典型的空域问题。您必须将 WebViewBrush 用于可能掩盖您的 XAML 控件的任何 WebView。一些替代方案包括修改您的 UI 布局 - 例如转到一个单独的页面以显示您的选择器控件或移动 ui 元素,以免它们发生冲突或在 HTML 中实现所有这些。

    【讨论】:

    • 知道如何为占据屏幕 80% 的整个 GridView 使用 WebViewBrush 吗??
    • 好吧,你可能需要为每个 WebView 一个。这就是 iirc 的工作原理。
    • 我的每个 Webview 都是 GridView 中的一个项目。因此,在我使用的数据模板中,我可以将该矩形用于 WebViewBrush。但在那之后,我可以编写部分代码以使 WebViewBrush 为每个 webView 工作???
    • 这取决于您如何填充 GridView。您可以为具有 WebView、WebViewBrush 和绑定到视图模型属性的每个项目使用 UserControl,当您的 ComboBox 下拉菜单打开或关闭导致 WebView 或 WebViewBrush 之间切换时,您会更新这些属性。您还可以使用诸如 Prism EventAggregator 或 MVVM Light 的 Messenger 之类的东西来请求所有 WebView 在 ComboBox 打开时进行切换,等等。
    猜你喜欢
    • 2015-01-27
    • 2018-06-04
    • 1970-01-01
    • 1970-01-01
    • 2014-01-03
    • 1970-01-01
    • 1970-01-01
    • 2014-11-22
    • 1970-01-01
    相关资源
    最近更新 更多