2
在我的应用程序中,我有一个CheckBox
其中,我想当它被检查,显示一个DataTemplate
,当它未选中时,显示另一个。如何在运行时更改数据模板?
下面是两个模板
<DataGrid x:Name="dataGrid" LoadingRow="dataGrid_LoadingRow_1" ItemsSource="{Binding Item3}"
<DataGrid.RowHeaderTemplate>
<DataTemplate>
<TextBlock Text="{Binding StudentId}"/>
</DataTemplate>
<DataTemplate>
<TextBlock Text="{Binding FullName}"/>
</DataTemplate>
</DataGrid.RowHeaderTemplate>
</DataGrid>
我不知道如何实现它的片段,但我认为我需要的接口INotifyPropertyChanged
在我的用户控制火灾或只是确定何时改变。
查找'DataTemplateSelector',我认为它应该很好地适合你的需要。 –
好吧,那不是我真正的疑问,我的意思是,当复选框状态发生变化时,我希望那些无形的消息,我看到fireth数据模板选择器 –
。那么,一种选择是创建一个派生自'ContentControl'的类,其中包含三个依赖项属性:两个用于模板的DataTemplate类型和一个用于绑定到CheckBox.IsChecked的'bool'。然后,此控件可以根据Boolean属性的值设置适当的模板,并且还可以在依赖项属性更改时更新模板。然后,您可以立即将此类放置在RowHeaderTemplate的'DataTemplate'中,并添加适当的绑定。 –