WPF Databind友好枚举错误

时间:2012-04-23 15:48:44

标签: wpf data-binding

为了绑定'友好'枚举,请点击此链接

Databinding an enum property to a ComboBox in WPF

但是我有这样的错误:无法从“状态”字符串

创建“类型”

这是我背后的代码

    public enum Status
    {
        [Description("Available.")]
        Available,
        [Description("Not here right now.")]
        Away,
        [Description("I don't have time right now.")]
        Busy
    }


    public Status CurrentStatus { get; set; }


    public MainWindow()
    {
        InitializeComponent();

    }

这是我的XAML

<Grid>
    <ComboBox 
        ItemsSource="{Binding Source={my:Enumeration {x:Type Status}}}" 
        DisplayMemberPath="Description" 
        SelectedValue="{Binding CurrentStatus}"  
        SelectedValuePath="Value"  />

</Grid>

我错了什么?

感谢

1 个答案:

答案 0 :(得分:0)

您缺少名称空间。如果您的代码位于名为MyProject的名称空间中,那么您需要在xaml文件的顶部添加对该代码的引用:

    <xmlns:proj="clr-namespace:MyProject" />

然后相应地为您的类型添加前缀:

    ItemsSource="{Binding Source={my:Enumeration {x:Type proj:Status}}}" 

编辑:查看现有标记,使用my:Status可能就足够了。