Доброго времени суток.
Я делаю сложный грид, в котором количество столбцов зависит от количество дней в месяце.
В связи с этим создаю столбцы и назначаю им биндинг программно примерно так:
for(int i=1; i<days; i++)
{
Binding b = "DetailedPlan[" + i.ToString() + "].Volume"
бла-бла-бла
}
Мне понадобилось чтобы для некоторых строк, ячейки состояли из двух половинок, т.е. надо прикручивать CellTemplateSelector. Сделал.
Вот один из шаблонов.
<DataTemplate x:Key="MsgCellFirst">
<Grid>
<Grid.RowDefinitions>
<RowDefinition />
<RowDefinition />
</Grid.RowDefinitions>
<Border BorderThickness="0, 0, 0, 1" Margin="-3" BorderBrush="{Binding MSGColor}">
<TextBlock Text="{DetailedPlan[ ___???___look_at_me ].Volume}" Grid.Row="0" TextAlignment="Center" Margin="0, 3, 0, 0"/>
</Border>
<TextBlock Text="факт" Grid.Row="1" TextAlignment="Center" Margin="0, 3, 0, 0"/>
</Grid>
</DataTemplate>
Но проблема в том, что я не могу залезть в этот шаблон и программно указать свой биндинг (посколько, шаблон выдает TemplateSelector, а он не знает, что это за столбец)
Кто-нибудь с таким сталкивался? Как обойти это ограничение?
Спасибо.