Вот XAML, который я использую для отображения списка:
<ListBox x:Name="groupedList" HorizontalAlignment="Stretch" VerticalAlignment="Stretch" >
<ListBox.ItemTemplate>
<DataTemplate x:Name="myTemplate">
<StackPanel Orientation="Vertical">
<TextBlock Grid.Row="0" FontWeight="Bold" x:Name="templateHeader" />
<TextBlock Grid.Row="1" x:Name="templateCaption"/>
</StackPanel>
</DataTemplate>
</ListBox.ItemTemplate>
</ListBox>
Проблема в том, что привязка данных должна создаваться в коде, поскольку каждый раз появляются разные данные. (Фактически данные поступают с помощью индексатора [] с динамически выбранным полем в sql). Мой вопрос сейчас заключается в том, как применить привязку данных к списку и DataTemplate из кода. Насколько я понимаю, нет никакого способа получить доступ к элементам, определенным внутри DataTemplate .... Кто-нибудь может помочь?
Пока это моя попытка:
Binding binding = new Binding("["+CaptionField+"]");
binding.Source = this.controller.table.Rows;
binding.Mode = BindingMode.TwoWay;
BindingOperations.SetBinding(this.groupedList.Items, ItemsControl.ItemsSourceProperty, binding);
this.groupedList.SetBinding(null, binding);