1

VS11 テンプレートから作成されたグループ化されたアイテム ページがあります。このページには、通常のビュー用の GridView と、ページがスナップされたときに表示される ListView があります。セマンティック ズームを実装する必要がありますが、それでもページをスナップできます。

GridView SemanticZoom.ZoomedInView を移動しようとしたので、

    <ScrollViewer x:Name="itemListScrollViewer" ...
       <Listview ...
    </ScrollViewer>

    <SemanticZoom Grid.Row="1"  >
        <SemanticZoom.ZoomedInView>
            <GridView ...
        </SemanticZoom.ZoomedInView>
    </SemanticZoom>

ページがスナップされていない場合は ListView が非表示になり、ページがスナップされている場合は gridView が非表示になります。問題は、スナップ ビューで ListBox がスクロールせず、項目のクリックに反応しないことです。

4

2 に答える 2

0

スナップ ビューにもセマンティック ズームを使用しますか? そのような場合、私が行ったことは、ランドスケープ用とスナップ用の 2 つの異なる SemanticZooms を実装し、現在の視覚状態に対して正しいものだけを表示することでした。したがって、出発点は次のようになります。

<SemanticZoom x:Name="semanticZoom" Visibility="Visible">
    <SemanticZoom.ZoomedOutView>
        <GridView  ...
    </SemanticZoom.ZoomedOutView>

    <SemanticZoom.ZoomedInView>
        <GridView  ...
    </SemanticZoom.ZoomedInView>
</SemanticZoom>


<SemanticZoom x:Name="semanticZoomSnapped" Visibility="Collapsed">
    <SemanticZoom.ZoomedOutView>
        <ListView ...
    </SemanticZoom.ZoomedOutView>

    <SemanticZoom.ZoomedInView>
        <ListView ...
    </SemanticZoom.ZoomedInView>
</SemanticZoom>

または、スナップ モードでセマンティック ズームが必要ない場合は、現在のアプローチを試してみてください。そしてもちろん、ListView の isItemClickEnabled が true に設定されていることなどを確認してください。

PS私はあなたがListBoxと言うところはListViewを意味すると思いますか?ListBoxという要素も存在するので。

于 2012-04-26T15:05:14.360 に答える
0

問題を解決するための非常に奇妙な方法を見つけました。SemanticZoom の ordet を ScrollViewer のように切り替えると、

<SemanticZoom Grid.Row="1"  >
    <SemanticZoom.ZoomedInView>
        <GridView ...
    </SemanticZoom.ZoomedInView>
</SemanticZoom>

<ScrollViewer x:Name="itemListScrollViewer" ...
   <Listview ...
</ScrollViewer>

すべてが機能するよりも。理由はありますか?

于 2012-04-28T10:16:22.940 に答える