Wpf radiobutton上奇怪的焦点矩形

时间:2012-08-15 14:40:49

标签: wpf xaml radio-button

为什么单击其中一个时矩形会出现在单选按钮中。

strange focus rectangles on wpf radiobutton

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>

3 个答案:

答案 0 :(得分:20)

我返回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;
            }

答案 1 :(得分:4)

这些被称为FocusVisualStyle,你可以删除它 -

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

<强>更新

是的H.B.是的,我以为你在谈论我们点击radioButton的虚线边框。但似乎是validation border,请检查您的转换器代码,其中有些内容正在破坏。

答案 2 :(得分:2)

对我来说看起来像是一个验证错误,可能是因为ConverterParameter前面的空格。 (您可能需要考虑使用another method来绑定RadioButtons)