1.まっさらなWPFプロジェクトがあります
2.SampleDataSetを使って、画像を文字のプロパティを持ったCollectionをつくります。
3.Collectionをデザインビューにドラッグすると、いいかんじにListBoxが生成されます。
4.右クリックして、追加テンプレートの編集 -> アイテムレイアウトの編集 ->コピーして編集をクリック
5.スタイル名はとりあえずこのままで。
6.すると、Itemが入った体のVirtualizingStackPanelが現れるので、こいつのOrientationプロパティをHorizontalに。
7.実行すると横になりました。
8.次に選択時の表現を変更してみましょう。
追加テンプレートの編集 -> 生成されたアイテムコンテナーの編集 -> コピーして編集
9.するとContentPresenterが現れます。この中に文字とか画像がホストされています。
10.選択時の表現はWPFならではのトリガーで管理されています。他のXAMLプラットフォームならVSMですね。
初期値では、マウスが乗っているとき、選択されてるけど変更できないとき(?)、選択されている時の3ステートがあります。
変更するには、それぞれのステートをクリックして、プロパティを変更します。
11.今回は選択時の表現を変更したいので、3つめのステートをクリックします。
12.その状態で、[Border]Bgの背景色を適当に変えてみましょう。
13.実行すると、選択時は変更した色に、OnMouseされている右のアイテムは標準の表現になっています。
WPFではWindows StoreのようなチェックマークはListBoxには付きませんが、こうしたものを付けたい場合は、手順9のところで、チェックマークのパスコントロールなどを置いて、手順12のところで、チェックマークの色を変更するなど、すれば、Windows Storeのような表現に近づきます。