1

Windows Metro アプリに次のコントロールがあります。

string html = "<html><body>test content</body></head>";
myWebView.Opacity = 0.5;
myWebView.NavigateToString(html);

これは問題なく動作しますが、最終的には空白の白い背景に黒いテキストが表示されます。私が実際に望んでいるのは、これが現在の Metro スタイルで機能することです (設定に応じて暗い背景または明るい背景に一致します)。上記の設定で遊んでみましたが、Opacity違いはないようです。

WebView コントロールに現在の Metro スタイルを反映させる方法はありますか?

4

1 に答える 1

1

これは仕様によるものです。 WebView-コントロールは何もサポートしていませんOpacity。なぜなら、それらはすべての上にレンダリングされる一種の特別なコントロールだからです。

MSDNドキュメントから:

WebViewには、コントロールなどの他のUI領域をWebViewの上にレンダリングできないという特徴があります。これは、ウィンドウ領域が内部でどのように処理されるか、特に入力イベントがどのように処理され、画面がどのように描画されるかによるものです。HTMLコンテンツをレンダリングし、そのHTMLコンテンツの上に他のUI要素を配置する場合は、レンダリング領域としてWebViewBrushを使用する必要があります。WebViewは引き続きHTMLソース情報を提供し、要素名バインディングとSourceNameプロパティを介してそのWebViewを参照します。WebViewBrushには、このオーバーレイ制限はありません。

于 2012-10-10T19:50:57.320 に答える