Я использую несколько шаблонов данных для отображения разных значений, эти шаблоны данных выбираются DataTemplateSelector. Каждый элемент управления имеет некоторый DataBinding для моих пользовательских объектов. Объекты являются частью ObservableCollection, а затем DTS выбирает для них шаблон. Проблема заключается в следующем: когда я пытаюсь запустить свое приложение с некоторыми предварительно определенными объектами (в коде), выбранные элементы управления не имеют значений. Пример:DataBinding in TemplateSelector
<!--Date Template-->
<DataTemplate x:Key="DateTemplate">
<WrapPanel x:Name="DateTemplate_Panel">
<WrapPanel.DataContext>
<params:FTParams />
</WrapPanel.DataContext>
<Label x:Name="DateTemplate_Label" Content="{Binding Path=Name}" />
<DatePicker x:Name="DateTemplate_DatePicker" SelectedDate="{Binding Path=SelectedValue}" SelectedDateFormat="Long" />
</WrapPanel>
</DataTemplate>
Органы управления реагируют только при изменении их стоимости (INotifyPropertyChanged
реализуется)
Если я поставил
<Label Content="{Binding Path=SelectedValue}"/>
и я выбрать дату в DataPicker затем содержимое загружается правильно , Но мне действительно нужно, чтобы эти значения загружались при запуске. Можете ли вы дать мне совет?
Можете ли вы привести пример класса в ObservableCollection, к которому это привязано? – kaj