4

背景が透明な Win8 (別名 Metro スタイル アプリ) で Webview を作成する方法を探しています。HTML で背景を透明に設定すると、Webview の背景は常に白色でレンダリングされます。

Microsoft フォーラムで、この機能が利用できないという投稿を読みました:

Webview を透明にするためのライブラリまたは回避策はありますか?

4

2 に答える 2

4

XAMLで WebView DefaultBackgroundColor="Transparent"のプロパティを設定するだけです。

<WebView DefaultBackgroundColor="Transparent"/>
于 2014-01-27T14:38:42.550 に答える
3

これには回避策があります。WebViewBrush を使用して WebView を四角形に描画します。

まず、webview を四角形でまとめます。

<Grid>
     <WebView x:Name="WebView6" />
     <Rectangle Opacity="0.5" x:Name="Rect1"/>
</Grid>

WebView の準備ができてロードされたら ( WebView の LoadComplete イベントを使用できます)、次のコードを実行できます。

WebViewBrush b = new WebViewBrush();
        b.SourceName = "WebView6";
        b.Redraw();
        Rect1.Fill = b;
        WebView6.Visibility = Windows.UI.Xaml.Visibility.Collapsed;

これは、webview を四角形に描画してから、webview を折りたたみます。

残っているのは、webview を示す透明な長方形です。

残念ながら、この方法では Web ビューを操作できません。

編集:私はこの回避策を自分で使用しており、msdn doc で見つけることができます: http://msdn.microsoft.com/en-us/library/windows/apps/xaml/windows.ui.xaml.controls.webviewbrush

于 2013-01-17T12:27:03.280 に答える