我需要创建一个看起来像矩阵的数据网格
每天及其24小时的矩阵显示按钮
像:
7 6 5 4 3 2 1
0
1
。
。
23个
我正在使用MVVM模式,这似乎使其更难实现,
谢谢大家。
答案 0 :(得分: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
集合(可能是相同的共享集合)。
说了这么多,数据驱动有什么好处?您的矩阵的尺寸可能会发生变化吗?如果没有,为什么不只是&#34;硬编码&#34;你视图中的矩阵?每个矩阵单元仍然可以绑定到视图模型中的相应数据项。