1

私はドキュメントを読み、多くのサンプルを試しましたが、正直なところ、サンプルはごちゃごちゃしたように見え、あまり意味がありません。

XAML で ListView コントロールのスタイルを設定する方法について、わかりやすいチュートリアルやドキュメントを推奨できる人はいますか? (エクスプレッション ブレンドなし)

4

2 に答える 2

1

この 2 部構成の「WPF ListView スタイリング チュートリアル」の記事をご覧ください: http://blog.vascooliveira.com/wpf-listview-styling-tutorial-part-i/

注: 私のコンピューターでは、XML (XAML) コードが正しく表示されず、< および > 記号が "<" および ">" として表示されます。

于 2013-01-20T16:52:49.893 に答える
1

ListView のスタイルを設定する 2 つの主な一般的な方法は、アイテムのスタイルを設定し、リスト ボックスがアイテムのレイアウトに使用するコンテナーの種類を変更することです。

アイテムのスタイリング
これは基本的ItemTemplateに、リストボックスのコンテンツを表示する方法を知っているものに in xaml を設定することを意味しItemsSource、通常はバインディングを使用します。

たとえば、ObservableCollection<Customer>customer が次のように定義されているリストボックスへのバインドがあるとします。

public class Order
{
    public int Id { get; set; }
    public string OrderReference { get; set; }
    public string CustomerName { get; set; }
}

次に、次のようにデータ テンプレートを使用してアイテムのスタイルを設定できます。

<ListBox>
    <ListBox.ItemTemplate>
        <DataTemplate>
            <StackPanel>
                <TextBlock Text="{Binding CustomerName}" />
                <TextBlock Text="{Binding OrderReference}" />
            </StackPanel>
        </DataTemplate>
    </ListBox.ItemTemplate>
</ListBox>

基本的な例ですが、アイデアはわかります。

アイテムのレイアウト方法の変更
基本的に、アイテムが縦にリストされる既定の動作は望ましくない場合があるため、プロパティを使用して、リストボックス内で使用されるコンテナー コントロールをより適切なものに変更できItemsPanelます。たとえば、Windows エクスプローラーの「大きなアイコン」ビューの項目のように見える項目テンプレートがある場合、リストボックスで aWrapPanelではなく aを使用することができますStackPanel(私はそれが a であると確信していますStackPanel)。

<ListBox>
    <ListBox.ItemsPanel>
        <DataTemplate>
            <WrapPanel>
                <ContentPresenter />
            </WrapPanel>
        </DataTemplate>
    </ListBox.ItemsPanel>
</ListBox>

再び基本的な例。

このコードはすべてメモリから StackOverflow に書き込んだため、いくつかのタイプミスや記憶違いがある場合は申し訳ありません。

HTH。

于 2013-01-20T17:17:28.680 に答える