0

Windows Phone 7 アプリを開発しています。私はそれに非常に新しいです。

ここで、いくつかの写真を含むパノラマ コントロールを見てきました (パノラマ アイテムのサンプル)。

私はそれをしたいのですが、方法がわかりません。

リストボックスと DataItemTemplate を使用してそれを行うにはどうすればよいですか? または、それを行う他の方法はありますか?

URL のリストを含む XML があります。XML に含める URL と同じ数の画像を追加します。

しかし、私の問題は、そのようなマトリックスをどのように満たすことができるかということです.

わからないことがあれば、教えてください。

4

1 に答える 1

1

その特定のサンプルは、パノラマ コントロールの手作りのコピーです。

それを理解する最も簡単な方法は、おそらくそれをダウンロードして見てみることです - http://phone.codeplex.com/SourceControl/changeset/view/55041#の「サンプル」PanoramaItem の特定の画像セクションのソース コードを参照してください。 820130 - スタイルでスタイル化された ListBox を使用して行われていることがわかりますPanoramaImageListBox

リスト ボックス:

 <ListBox x:Name="listBox2"
                         HorizontalAlignment="Left"
                         Width="600"
                         ItemsSource="{Binding Source={StaticResource PicturesLoader}, Path=Pictures}"
                         Style="{StaticResource PanoramaImageListBox}"
                         SelectionChanged="listBox_SelectionChanged"/>

スタイル:

<Style x:Key="PanoramaImageListBox" TargetType="ListBox">
            <Setter Property="ItemsPanel">
                <Setter.Value>
                    <ItemsPanelTemplate>
                        <my:MultiColumnsPanel Columns="3"
                            HorizontalAlignment="Left"
                            VerticalAlignment="Top"/>
                    </ItemsPanelTemplate>
                </Setter.Value>
            </Setter>
            <Setter Property="ItemContainerStyle">
                <Setter.Value>
                    <Style TargetType="ListBoxItem">
                        <Setter Property="Template">
                            <Setter.Value>
                                <ControlTemplate TargetType="ListBoxItem">
                                    <Image Width="185" Margin="0,0,12,12"
                                           Source="{Binding Bitmap}"/>
                                </ControlTemplate>
                            </Setter.Value>
                        </Setter>
                    </Style>
                </Setter.Value>
            </Setter>
        </Style>

このスタイルが独自のクラス MultiColumnPanel を使用していることがわかります。http://phone.codeplex.com/SourceControl/changeset/view/55041#820131 のコードを参照してください

于 2011-05-06T18:26:39.577 に答える