我在 UWP XAML 中有一个用于 "Pregnancy Status" 的单选按钮,仅当将性别单选按钮选为 "female" 时才应启用该按钮
I have a radio button in UWP XAML for "Pregnancy Status" which should be enabled only when the Gender radio button is selected as "female"
<RadioButton x:Name="radioButton3" TabIndex="14" GroupName="PregnancyStatus" Content="Yes" IsChecked="{Binding PatientInfo.PregnancyStatus, Converter={StaticResource pregnancyStatusConverter}, ConverterParameter=Yes, Mode=TwoWay}" HorizontalAlignment="Left" VerticalAlignment="Center"/>
<RadioButton x:Name="radioButton4" TabIndex="15" GroupName="PregnancyStatus" Content="No" IsChecked="{Binding PatientInfo.PregnancyStatus, Converter={StaticResource pregnancyStatusConverter}, ConverterParameter=No, Mode=TwoWay}" HorizontalAlignment="Left" VerticalAlignment="Center" />
<RadioButton x:Name="radioButton5" TabIndex="16" GroupName="PregnancyStatus" Content="Unknown" IsChecked="{Binding PatientInfo.PregnancyStatus, Converter={StaticResource pregnancyStatusConverter}, ConverterParameter=Unknown, Mode=TwoWay}" HorizontalAlignment="Left" VerticalAlignment="Center"/>
如何才能仅在性别单选按钮为 "female" 时启用此单选按钮,对于 "male" 我应该无法编辑此按钮。
可以使用IsEnabled
属性。假设您的女性性别单选按钮有 x:Name
个 radioFemale
。然后,您将添加一个 IsEnabled
属性 绑定,如下所示:
IsEnabled="{Binding IsChecked, ElementName=radioFemale}"
这意味着一旦女性单选按钮被选中,启用的 属性 将为真,反之亦然。所以对于你的代码:
<RadioButton x:Name="radioButton3"
IsEnabled="{Binding IsChecked, ElementName=radioFemale}"
TabIndex="14" GroupName="PregnancyStatus" Content="Yes"
IsChecked="{Binding PatientInfo.PregnancyStatus, Converter={StaticResource pregnancyStatusConverter}, ConverterParameter=Yes, Mode=TwoWay}" HorizontalAlignment="Left" VerticalAlignment="Center"/>
<RadioButton x:Name="radioButton4"
IsEnabled="{Binding IsChecked, ElementName=radioFemale}"
TabIndex="15" GroupName="PregnancyStatus" Content="No"
IsChecked="{Binding PatientInfo.PregnancyStatus, Converter={StaticResource pregnancyStatusConverter}, ConverterParameter=No, Mode=TwoWay}" HorizontalAlignment="Left" VerticalAlignment="Center" Command="{Binding PregnancyStatusCommand}" />
<RadioButton x:Name="radioButton5"
IsEnabled="{Binding IsChecked, ElementName=radioFemale}"
TabIndex="16" GroupName="PregnancyStatus" Content="Unknown"
IsChecked="{Binding PatientInfo.PregnancyStatus, Converter={StaticResource pregnancyStatusConverter}, ConverterParameter=Unknown, Mode=TwoWay}" HorizontalAlignment="Left" VerticalAlignment="Center"/>
<RadioButton x:Name="radioButton3" TabIndex="14" GroupName="PregnancyStatus" Content="Yes" IsChecked="{Binding PatientInfo.PregnancyStatus, Converter={StaticResource pregnancyStatusConverter}, ConverterParameter=Yes, Mode=TwoWay}" HorizontalAlignment="Left" VerticalAlignment="Center"/>
<RadioButton x:Name="radioButton4" TabIndex="15" GroupName="PregnancyStatus" Content="No" IsChecked="{Binding PatientInfo.PregnancyStatus, Converter={StaticResource pregnancyStatusConverter}, ConverterParameter=No, Mode=TwoWay}" HorizontalAlignment="Left" VerticalAlignment="Center" />
<RadioButton x:Name="radioButton5" TabIndex="16" GroupName="PregnancyStatus" Content="Unknown" IsChecked="{Binding PatientInfo.PregnancyStatus, Converter={StaticResource pregnancyStatusConverter}, ConverterParameter=Unknown, Mode=TwoWay}" HorizontalAlignment="Left" VerticalAlignment="Center"/>
如何才能仅在性别单选按钮为 "female" 时启用此单选按钮,对于 "male" 我应该无法编辑此按钮。
可以使用IsEnabled
属性。假设您的女性性别单选按钮有 x:Name
个 radioFemale
。然后,您将添加一个 IsEnabled
属性 绑定,如下所示:
IsEnabled="{Binding IsChecked, ElementName=radioFemale}"
这意味着一旦女性单选按钮被选中,启用的 属性 将为真,反之亦然。所以对于你的代码:
<RadioButton x:Name="radioButton3"
IsEnabled="{Binding IsChecked, ElementName=radioFemale}"
TabIndex="14" GroupName="PregnancyStatus" Content="Yes"
IsChecked="{Binding PatientInfo.PregnancyStatus, Converter={StaticResource pregnancyStatusConverter}, ConverterParameter=Yes, Mode=TwoWay}" HorizontalAlignment="Left" VerticalAlignment="Center"/>
<RadioButton x:Name="radioButton4"
IsEnabled="{Binding IsChecked, ElementName=radioFemale}"
TabIndex="15" GroupName="PregnancyStatus" Content="No"
IsChecked="{Binding PatientInfo.PregnancyStatus, Converter={StaticResource pregnancyStatusConverter}, ConverterParameter=No, Mode=TwoWay}" HorizontalAlignment="Left" VerticalAlignment="Center" Command="{Binding PregnancyStatusCommand}" />
<RadioButton x:Name="radioButton5"
IsEnabled="{Binding IsChecked, ElementName=radioFemale}"
TabIndex="16" GroupName="PregnancyStatus" Content="Unknown"
IsChecked="{Binding PatientInfo.PregnancyStatus, Converter={StaticResource pregnancyStatusConverter}, ConverterParameter=Unknown, Mode=TwoWay}" HorizontalAlignment="Left" VerticalAlignment="Center"/>