当前位置:   article > 正文

WPF_ComboBox的MVVM绑定(二)_wpfmvvm combox双向绑定

wpfmvvm combox双向绑定

WPF_ComboBox的MVVM绑定(二)

WPF_ComboBox的MVVM绑定(一)
WPF_ComboBox的MVVM绑定(二)
WPF_ComboBox的MVVM绑定(三)

一、前言

在第一篇总我们介绍了一种比较复杂的绑定方式,在这一篇中我们介绍一种更简单的方法。因为我们需要绑定到ComboBox的内容,一般情况下都可以使用枚举类型装载,所以在这篇文章中其实就是介绍的枚举类型绑定到ComboBox控件上。

二、示例

        public Array Enums
        {
            get
            {
                return  Enum.GetValues(typeof(MyEnum));
            }
        }

        public enum MyEnum
        {
            我是枚举0 = 0,
            我是枚举1 = 3,
            我是枚举2 = 5,
            我是枚举3 = 8,
            我是枚举4 = 9,
        }

        private MyEnum e=MyEnum.我是枚举0;

        public MyEnum E
        {
            get { return e; }
            set 
            {
                Console.WriteLine((int)value);
                e = value;OnPropertyChanged(); 
            }
        }
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
<ComboBox
            Grid.Row="1"
            ItemsSource="{Binding Enums}"
            SelectedItem="{Binding E}" />
  • 1
  • 2
  • 3
  • 4

使用Enum.GetValues(typeof(MyEnum))返回的Array对象作为ComboBox的ItemSource,这样在ComboBox中的一个项显示的就是一个枚举符号。

然后再让SelectedItem绑定了一个该枚举对象,这样就做到了双向绑定。

但是,这样使用枚举绑定就不是很方便做到隐藏其中某一项了。

三、效果

在这里插入图片描述

声明:本文内容由网友自发贡献,转载请注明出处:【wpsshop博客】
推荐阅读
相关标签
  

闽ICP备14008679号