我有三个RadioButton
,如图所示。
<RadioButton x:Name="Rbtn_Dashboard" IsChecked="True" Height="40" Style="{StaticResource DashboardRBtnStyle}" Content="DASHBOARD" FontFamily="Segoe UI Semibold" FontSize="13" GroupName="nav" />
<RadioButton x:Name="Rbtn_AdminSettings" Height="40" Visibility="{Binding AppSettings, Converter={StaticResource ConvertToVisible}}" Style="{StaticResource DashboardRBtnStyle}" Content="ADMIN SETTINGS" FontFamily="Segoe UI Semibold" FontSize="13" GroupName="nav" />
<RadioButton x:Name="Rbtn_ManageUsers" Height="40" Visibility="{Binding ManageUsers, Converter={StaticResource ConvertToVisible}}" Style="{StaticResource DashboardRBtnStyle}" Content="MANAGE USERS" FontFamily="Segoe UI Semibold" FontSize="13" GroupName="nav" />
我还有一个TextBlock
:
<TextBlock x:Name="txtDescName" Text="(display previewed discriptions.)" TextTrimming="CharacterEllipsis" FontSize="14" Foreground="#FF555555" Margin="5,0,5,0" VerticalAlignment="Center" />
我现在的挑战是:
选中x:Name="Rbtn_AdminSettings"
后,我希望x:Name="txtDescName"
中的文字从DASHBOARD
更改为APPSETTINGS
。感谢。
答案 0 :(得分:2)
Trigger
或在您的情况下,三个Trigger
可以胜任。
<TextBlock>
<TextBlock.Style>
<Style TargetType="TextBlock">
<Style.Triggers>
<DataTrigger Binding="{Binding ElementName= Rbtn_Dashboard, Path=IsChecked}" Value="True">
<Setter Property="Text"
Value="DASHBOARD" />
</DataTrigger>
<DataTrigger Binding="{Binding ElementName= Rbtn_AdminSettings, Path=IsChecked}"
Value="True">
<Setter Property="Text"
Value="APPSETTINGS" />
</DataTrigger>
<DataTrigger Binding="{Binding ElementName= Rbtn_ManageUsers, Path=IsChecked}"
Value="True">
<Setter Property="Text"
Value="MANAGE" />
</DataTrigger>
</Style.Triggers>
</Style>
</TextBlock.Style>
</TextBlock>
答案 1 :(得分:0)
嗯,你可以这样做:
<TextBlock x:Name="txtDescName" Text="{Binding ElementName=Rbtn_AdminSettings, Path=Content}" TextTrimming="CharacterEllipsis" FontSize="14" Foreground="#FF555555" Margin="5,0,5,0" VerticalAlignment="Center" />
同样对于其他2个单选按钮也是如此。 虽然,理想情况下,您的单选按钮会绑定到视图模型中的属性,然后可以根据选择的单选按钮从VM设置文本块