字符串到 IsChecked 转换器
在 XAML 中:
<RadioButton IsChecked="{Binding EntityValue, Mode=TwoWay,
Converter={StaticResource StringToIsCheckedConverter},
ConverterParameter=Male}"
Content="Male"/>
<RadioButton IsChecked="{Binding EntityValue, Mode=TwoWay,
Converter={StaticResource StringToIsCheckedConverter},
ConverterParameter=Female}"
Content="Female"/>
C#类:
public class StringToIsCheckedConverter : IValueConverter
{
public object Convert(object value, Type targetType, object parameter, System.Globalization.CultureInfo culture)
{
string input = (string)value;
string test = (string)parameter;
return input == test;
}
public object ConvertBack(object value, Type targetType, object parameter, System.Globalization.CultureInfo culture)
{
if (value == null || !(value is bool))
{
return string.Empty;
}
if (parameter == null || !(parameter is string))
{
return string.Empty;
}
if ((bool)value)
{
return parameter.ToString();
}
else
{
return string.Empty;
}
}
}