Для очень настраиваемого элемента управления календарем мне нужно иметь объект недели и привязать объекты Day в течение этой недели к сетке. Я подумал, что у меня будет перечисление DayOfWeek, которое решит, где день должен идти в сетку. Таким образом, если месяц начинается во вторник, у него будет свойство Grid.Column = "2". Но почему-то все они попадают в первую колонку, и я не знаю почему.Связывание DayOfWeek enum с пользовательской панелью управления календарем
<ItemsControl ItemsSource="{Binding Weeks}" SnapsToDevicePixels="True">
<ItemsControl.ItemTemplate>
<DataTemplate>
<ItemsControl ItemsSource="{Binding Days}"> <!--7 most of the time-->
<ItemsControl.ItemsPanel>
<ItemsPanelTemplate>
<Grid>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="28" />
<ColumnDefinition Width="28" />
<ColumnDefinition Width="28" />
<ColumnDefinition Width="28" />
<ColumnDefinition Width="28" />
<ColumnDefinition Width="28" />
<ColumnDefinition Width="28" />
</Grid.ColumnDefinitions>
</Grid>
</ItemsPanelTemplate>
</ItemsControl.ItemsPanel>
<ItemsControl.ItemTemplate>
<DataTemplate>
<TextBlock Text="{Binding Date.Day}" Grid.Column="{Binding DayOfWeekInt}"/>
</DataTemplate>
</ItemsControl.ItemTemplate>
</ItemsControl>
</DataTemplate>
</ItemsControl.ItemTemplate>
</ItemsControl>
И у меня есть, что привязка к собственности на объект день так:
public int DayOfWeekInt
{
get { return (int)Date.DayOfWeek; }
}
Любые идеи?