複数のWebView コントロールを配置したFlipView コントロールに対してタッチ操作を行うと、FlipView コントロールの先頭に配置されたWebView コントロールに表示が切り替わります

現象

Windows ストア アプリにおいて、FlipView コントロール内に複数のWebView コントロールを配置した場合、ジェスチャーのタッチ操作を行っている間はFlipView コントロール内に配置した最初のWebView の描画内容がFlipView 領域外の画面上に表示されます。
なお、この現象は、タッチ パネルのディスプレイ使用して、ジェスチャーのタッチ操作を行った場合のみ発生し、マウス操作では問題は発生しません。

原因

Windows 8 のストア アプリにおいて、FlipView コントロール内に配置されたWebView コントロールはウィンドウの Z オーダーを正しく管理できないため、この現象が発生します。

回避策

この現象を回避するには、FlipView コントロール内で仮想化を無効にする必要があり、Windows ストア アプリの XAML ファイルに以下の実装を追加します。
<FlipView.ItemsPanel>
<ItemsPanelTemplate>
<StackPanel Orientation="Horizontal" />
</ItemsPanelTemplate>
</FlipView.ItemsPanel>

状況

マイクロソフトでは、この問題をこの資料の対象製品として記載されているマイクロソフト製品の問題として認識しています。

詳細

この現象を確認するための手順は以下の通りです。

  1. FlipView コントロールに WebView コントロールを配置した XAML ファイルを作成し、Windows ストア アプリを作成します。
    <FlipView x:Name="flipView">
    <FlipView.Items>
    <FlipViewItem>
    <WebView Margin="80" Source="http://www.bing.com/"/>
    </FlipViewItem>
    <FlipViewItem>
    <WebView Margin="80" Source="http://t.jp.msn.com/"/>
    </FlipViewItem>
    </FlipView.Items>
    </FlipView>
  2. 作成したアプリを起動して画面を表示し、フリック操作にて次のページに移動します。上記の XAML では、WebView コントロールに以下の URL の内容が表示されます。
    http://t.jp.msn.com/
  3. 移動したページでタッチ操作を行うと、前のページが表示されます。上記の XAML では、WebView コントロールに以下の URL の内容が表示されます。
    http://www.bing.com


プロパティ

文書番号:2868705 - 最終更新日: 2016/09/29 - リビジョン: 1

フィードバック