zoukankan      html  css  js  c++  java
  • wpf enum绑定到comcobox控件

    以下两种方法是我自己都测试过的

    方法1:通过继承MarkupExtension

    步骤1:新建一个类

    MarkupExtensionReturnType(typeof(object[]))]
    publicclassEnumValuesExtension:MarkupExtension
    {
       
    publicEnumValuesExtension()
       
    {
       
    }

       
    publicEnumValuesExtension(Type enumType)
       
    {
           
    this.EnumType= enumType;
       
    }

       
    [ConstructorArgument("enumType")]
       
    publicTypeEnumType{get;set;}

       
    publicoverrideobjectProvideValue(IServiceProvider serviceProvider)
       
    {
           
    if(this.EnumType==null)
               
    thrownewArgumentException("The enum type is not set");
           
    returnEnum.GetValues(this.EnumType);
       
    }
    }

    步骤2:在xaml中引用 xmlns:mymeun="clr-namespace:WpfMipLibrary.Util;assembly=WpfMipLibrary"

    最后使用: 

    <my1:CaComboBox Name="cmbmateria" ItemsSource="{mymeun:EnumValues vm:MateriaAppType}" />

    方法二:直接使用

      Array materialist = Enum.GetValues(typeof(MateriaAppType));
      cmbmateria1.ItemsSource = materialist;

    方法二很简单,一句话而已,但是效果和方法一是一样的

  • 相关阅读:
    DRF分页器
    DRF版本控制
    crrm复习
    python面试题网络编程和数据库
    python基础面试题
    前端格式
    数据库基本命令
    数据库管理系统
    线程协程和进程
    IPC通信
  • 原文地址:https://www.cnblogs.com/zhuxiaohui/p/2804656.html
Copyright © 2011-2022 走看看