私のアプリケーションでは、特定のTextBlock
のテキストは、RadioButton
のどちらがチェックされているかによって異なります。以下のXAMLの例である:C#WPF:DataTriggerのRadioButton IsCheckedプロパティを使用
<Window x:Class="UTScanForm.Support.Window1"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
xmlns:local="clr-namespace:UTScanForm.Support"
mc:Ignorable="d"
Title="Window1" Height="300" Width="300">
<Grid>
<StackPanel>
<RadioButton x:Name="RB1" Content="RB1"/>
<RadioButton x:Name="RB2" Content="RB2"/>
<TextBlock Text="none">
<TextBlock.Style>
<Style TargetType="TextBlock">
<Style.Triggers>
<DataTrigger Binding="{Binding IsChecked, ElementName=RB1}" Value="True">
<Setter Property="Text" Value="RB1"/>
</DataTrigger>
<DataTrigger Binding="{Binding IsChecked, ElementName=RB2}" Value="True">
<Setter Property="Text" Value="RB2"/>
</DataTrigger>
</Style.Triggers>
</Style>
</TextBlock.Style>
</TextBlock>
</StackPanel>
</Grid>
</Window>
上記のコードが示すように、2つのラジオボタン、RB1
とRB2
があります。 RB1
がチェックされている場合、テキストブロックのテキストはRB1
に、そうでない場合はRB2
になります。しかし、コードは機能していません。私が作ったミスや正しい解決策は何かを指摘してください。