我有WPF窗口,其中包含Frame和两个Radio Buttons。我需要通过更改单选按钮检查状态来切换Frames ContentTemplate。我如何仅使用xaml实现它?
答案 0 :(得分:2)
由于您没有添加任何示例代码,因此没有太多事情要做。尝试类似这样的事情
<ContentControl>
<ContentControl.ContentTemplate>
<DataTemplate>
<DataTemplate.Resources>
<DataTemplate x:Key="dataTemplate1">
<TextBlock Text="Template 1"/>
</DataTemplate>
<DataTemplate x:Key="dataTemplate2">
<TextBlock Text="Template 2"/>
</DataTemplate>
</DataTemplate.Resources>
<StackPanel>
<Frame x:Name="frame1"
Height="100"
ContentTemplate="{StaticResource dataTemplate1}"/>
<RadioButton x:Name="template1RadioButton" IsChecked="True" Content="Template 1"/>
<RadioButton x:Name="template2RadioButton" Content="Template 2"/>
</StackPanel>
<DataTemplate.Triggers>
<DataTrigger Binding="{Binding ElementName=template2RadioButton, Path=IsChecked}" Value="True">
<Setter TargetName="frame1" Property="ContentTemplate" Value="{StaticResource dataTemplate2}"/>
</DataTrigger>
</DataTemplate.Triggers>
</DataTemplate>
</ContentControl.ContentTemplate>
</ContentControl>
答案 1 :(得分:0)
您可以使用Triggers
之类的Radio Button
<RadioButton.Triggers>
<Trigger Property="RadioButton.IsChecked" Value="True">
//enter your xaml here..
</Trigger>
</RadioButton.Triggers>
您可以在此博客Triggers
上查看有关触发器的更多信息