【发布时间】:2011-08-07 20:19:27
【问题描述】:
我创建了一个类 Person,如下所示:
public class Person
{
public enum GenderType
{
Female,
Male
}
public string Name
{
get; set;
}
public GenderType? Gender
{
get; set;
}
}
接下来,我创建了将呈现 Person 类型对象的数据模板。
这是 XAML 代码:
<DataTemplate
x:Key="personTemplate"
DataType="{x:Type model:Person}">
<StackPanel>
<RadioButton
Content="Female"
IsChecked="{Binding Path=Gender,
Converter={StaticResource genderConverter},
ConverterParameter=???}"/>
<RadioButton
Content="Male"
IsChecked="{Binding Path=Gender,
Converter={StaticResource genderConverter},
ConverterParameter=???}"/>
<RadioButton
Content="Not specified"
IsChecked="{Binding Path=Gender,
Converter={StaticResource genderConverter},
ConverterParameter=???}"/>
</StackPanel>
</DataTemplate>
当然,代码中的???s 不起作用:) 问题是我想创建一个genderConverter 转换器,它将给定值(即personObject.Gender)与给定的Person.GenderType 进行比较参数中提供的值,如果值匹配,则返回 true。
我不知道如何让转换器参数分别为第一个、第二个和第三个单选按钮传递Person.GenderType.Female、Person.GenderType.Male 和null。
【问题讨论】:
标签: .net wpf xaml binding converter