0

マトリックスのように見えるデータグリッドを作成する必要があります。マトリックスは、
各日とその 24 時間のボタンを表示します。 7 6 5 4 3 2 1 0 1
のようなもの 。 . 23 MVVM パターンを使用しているため、実装が難しくなっているよう です。ありがとうございます。







4

1 に答える 1

1

このようなもの:

<ItemsControl ItemsSource="{Binding DaysOfWeek}">
    <ItemsControl.ItemsPanel>
        <ItemsPanelTemplate>
            <UniformGrid Rows="1"/>
        </ItemsPanelTemplate>
    </ItemsControl.ItemsPanel>
    <ItemsControl.ItemTemplate>
        <DataTemplate>
            <ItemsControl ItemsSource="{Binding HoursInDay}">
                <ItemsControl.ItemsPanel>
                    <ItemsPanelTemplate>
                        <UniformGrid Columns="1"/>
                    </ItemsPanelTemplate>
                </ItemsControl.ItemsPanel>
            </ItemsControl>
        </DataTemplate>
    </ItemsControl.ItemTemplate>
</ItemsControl>

DaysOfWeekこれは、データ コンテキスト (つまり、メイン ビュー モデル) で呼び出されるコレクションがあることを前提としています。各DayOfWeekオブジェクトはHoursInDayコレクション (おそらく同じ共有コレクション) を公開します。

そうは言っても、これをデータ駆動する利点は何ですか? マトリックスの次元が変化する可能性はありますか? そうでない場合は、ビューでマトリックスを「ハードコード」してみませんか? 各マトリックス セルは、引き続きビュー モデル内の適切なデータ項目にバインドできます。

于 2012-09-16T08:18:44.683 に答える