WPF MVVM 绑定枚举

假定现在有个枚举数据如下:

/// <summary>
/// 控制类型
/// </summary>
public enum CMDType
{
    [Description("Ai巡检")]
    Ai,
    [Description("心跳")]
    Keeplive,
    [Description("切源命令")]
    Stream_cmd,
    [Description("源状态")]
    Stream_state,
}

在xaml中引入命名空间System

xmlns:sys="clr-namespace:System;assembly=mscorlib"

创建一个ObjectDataProvider资源,代码如下:

<Window.Resources>
        <ObjectDataProvider x:Key="DataEnum" MethodName="GetValues" ObjectType="{x:Type sys:Enum}">
            <ObjectDataProvider.MethodParameters>
                <x:Type TypeName="local:CMDType" />
            </ObjectDataProvider.MethodParameters>
        </ObjectDataProvider>
    </Window.Resources>

那么现在就可以使用数据绑定了。例如绑定到ComboBox:

<ComboBox ItemsSource="{Binding Source={StaticResource DataEnum}}" />

原文:https://www.cnblogs.com/zzr-stdio/p/13906598.html

留下评论