7

ラジオ ボタンをクリックすると、ラジオ ボタンに四角形が表示されるのはなぜですか。

wpfラジオボタンの奇妙なフォーカス長方形

XAML マークアップを以下に示します

<RadioButton GroupName="LabelDisp" IsChecked=".. Converter={StaticResource enumBooleanConverter}, ConverterParameter= LabOnly}" Content="{x:Static resx:StringRes.RadioButtonLab}" Style="{StaticResource ListOption}" Command="{Binding Path=Command}"></RadioButton>
<RadioButton GroupName="LabelDisp" IsChecked=".. Converter={StaticResource enumBooleanConverter}, ConverterParameter= DescOnly}" Content="{x:Static resx:StringRes.RadioButtonDesc}" Style="{StaticResource ListOption}" Command="{Binding Path=Command}"></RadioButton>
<RadioButton GroupName="LabelDisp" IsChecked=".. Converter={StaticResource enumBooleanConverter}, ConverterParameter= LabAndDescr}" Content="{x:Static resx:StringRes.RadioButtonBoth}" Style="{StaticResource ListOption}" Command="{Binding Path=Command}"></RadioButton>
4

3 に答える 3

26

null を返していましたが、代わりに Binding.Donothing を返す必要がありました。

public object ConvertBack(object value, Type targetType, object parameter, System.Globalization.CultureInfo culture)
            {
                return (bool)value ? Enum.Parse(targetType, parameter.ToString(), true) : Binding.DoNothing;
            }
于 2012-10-16T17:03:57.907 に答える
5

それらはFocusVisualStyleと呼ばれ、削除できます-

<RadioButton FocusVisualStyle="{x:Null}"/>

アップデート

ええ、HB は正しいです。radioButton をクリックして得た点線の境界線について話していると思いました。しかしvalidation border、コンバーターのコードを確認してください。何かが壊れているようです。

于 2012-08-15T14:41:56.657 に答える
2

おそらく . の前にあるスペースが原因で、検証エラーのように見えますConverterParameter。( RadioButton をバインドする別の方法を使用することを検討することをお勧めします)。

于 2012-08-15T14:43:23.597 に答える