У меня есть TreeView
, где у каждого элемента есть флажок. Я хочу, чтобы TextBlock
обновлялся всякий раз, когда элемент отмечен или снят с отметки в TreeView
. TextBlock
Text
должен быть привязан к свойству CheckedVersions
на моем DataContext
, так что когда я прочитал свойство CheckedVersions
, он дает мне строку, представляющую все отмеченные элементы в TreeView
. Проверенные элементы должны быть представлены в строке с разделителями с запятой. Какой был бы лучший способ сделать это? У меня есть следующий код XAML:WPF, обновление TextBlock при проверке CheckBox
<XmlDataProvider Source="XmlData/Versions.xml" XPath="//*[count(*)=0]"
x:Key="versionsXml"
IsInitialLoadEnabled="True" IsAsynchronous="False" />
<HierarchicalDataTemplate x:Key="versionTemplate">
<CheckBox Focusable="False" IsChecked="{Binding Path=IsChecked}"
Content="{Binding Path=Name, Mode=OneTime}"/>
</HierarchicalDataTemplate>
<TreeView x:Name="trv_version"
ItemsSource="{Binding Path=Versions, Mode=OneWay}"
ItemTemplate="{StaticResource versionTemplate}" />
<TextBlock x:Name="txb_version" Text="{Binding Path=CheckedVersions}"
TextWrapping="Wrap" />
Каждый элемент в моей TreeView
является экземпляром моей VersionViewModel
класса, который реализует INotifyPropertyChanged
и оповещает, когда IsChecked
изменения свойств. Кажется, я должен уметь подключаться к этому так, что когда IsChecked
изменяется на экземпляр VersionViewModel
в TreeView
, CheckedVersions
обновлениях. Может быть, если я установил UpdateSourceTrigger
на Text
переплет в TextBlock
? Что я должен установить?