1

私は を持ってWebBrowserScatterViewItemます。には他の ScatterViewItems もありますScatterView

ただし、WebBrowser が実際には ScatterViewItem に常駐していないように見えることに気付きました。別の ScatterViewItem ( を含むImage) をその上に移動すると、画像はWebBrowser を保持しているWebBrowserの後ろに表示されます。ScatterViewItemこれは Z オーダーです。

  1. ウェブブラウザ
  2. 画像
  3. 画像のSVI
  4. WebBrowser の SVI

これは非常に奇妙に見えます。別の ScatterViewItem をその上に移動すると、移動している ScatterViewItem が WebBrowser の上になるようにするにはどうすればよいですか?

編集:問題のスクリーンショットがあります:

https://db.tt/AbnxlnF0

4

2 に答える 2

1

WebBrowser を配置する ScatterViewItem の Height と width を修正します。

その理由は、Wpf WebBrowser が wi​​nforms webBrowser のラッパーであるためです。レンダリング エンジンは常に Wpf コントロールよりも winfroms コントロールを読み取るため、これが発生します。

正確な高さと幅がわからない場合は、以下のようにグリッドを使用してください

<Window x:Class="WebBrwoser.MainWindow"
    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
    Title="MainWindow" Height="Auto" Width="Auto">
<Grid>
    <Grid.RowDefinitions>
        <RowDefinition Height="75*"/>
        <RowDefinition Height="25*"/>
    </Grid.RowDefinitions>
    <Grid.ColumnDefinitions>
        <ColumnDefinition Width="75*"/>
        <ColumnDefinition Width="25*"/>
    </Grid.ColumnDefinitions>
    <WebBrowser Grid.Row="0" Grid.Column="0" Source="https://www.google.co.in"/>
    <StackPanel Grid.Column="1" Grid.Row="0">
        <Label Content="Web Browser will not hide me" Height="26" FontSize="15"/>
        <Label Content="Becaus i'm with in Grid. And it allocates the space for me" Height="26" FontSize="15"/>
    </StackPanel>
    <StackPanel Grid.Row="1">
        <Button Height="30" Width="200" Margin="10"/>
        <Button Height="30" Width="200" Margin="10"/>
        <Button Height="30" Width="200" Margin="10"/>
        <Button Height="30" Width="200" Margin="10"/>
    </StackPanel>
</Grid>
</Window>
于 2013-11-05T01:56:56.433 に答える
1

WPF ブラウザー コントロールを使用しないでください。"Chromium Embedded Framework" や "Awesomium" などの Chromium ベースのものを使用して、WebBrowser コントロールのようにうまく偽造するのではなく、WPF ビジュアルに直接レンダリングします。

ところで... Windows 8.1では、最新の「メトロ」アプリは、WebBrowserが世界を悩ませてきたのと同じ問題に悩まされていない新しいWebViewコントロールにアクセスできます。

于 2013-11-06T13:09:36.617 に答える