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 是对的,我以为你在谈论我们在单击单选按钮时得到的虚线边框。但似乎validation border,检查你的转换器代码,有什么东西在里面。

于 2012-08-15T14:41:56.657 回答
2

对我来说看起来像是一个验证错误,可能是因为ConverterParameter. (您可能要考虑使用另一种方法来绑定 RadioButtons)

于 2012-08-15T14:43:23.597 回答