首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

如何将绑定到枚举的ComboBox的初始SelectedItem设置为包含该枚举的对象的值?

要将绑定到枚举的ComboBox的初始SelectedItem设置为包含该枚举的对象的值,可以按照以下步骤进行操作:

  1. 创建一个包含该枚举的对象列表的集合,例如List<MyEnumObject>,其中MyEnumObject是一个自定义的包含枚举值和其他属性的类。
  2. 将该集合设置为ComboBox的ItemsSource,以便绑定数据源。
  3. 在XAML中,使用ItemTemplate定义ComboBox的显示方式,可以使用DataTemplate来显示MyEnumObject对象的属性。
  4. 在代码中,将ComboBox的SelectedValuePath属性设置为枚举值的属性名,将DisplayMemberPath属性设置为要显示的属性名。
  5. 在代码中,将ComboBox的SelectedValue绑定到包含枚举的对象的属性,以便在选择项更改时更新绑定的对象。

下面是一个示例代码:

代码语言:csharp
复制
// 枚举类型
public enum MyEnum
{
    Value1,
    Value2,
    Value3
}

// 自定义包含枚举的对象
public class MyEnumObject
{
    public MyEnum EnumValue { get; set; }
    public string OtherProperty { get; set; }
}

// 创建包含枚举的对象列表
List<MyEnumObject> enumList = new List<MyEnumObject>
{
    new MyEnumObject { EnumValue = MyEnum.Value1, OtherProperty = "Object 1" },
    new MyEnumObject { EnumValue = MyEnum.Value2, OtherProperty = "Object 2" },
    new MyEnumObject { EnumValue = MyEnum.Value3, OtherProperty = "Object 3" }
};

// 设置ComboBox的数据源和显示方式
comboBox.ItemsSource = enumList;
comboBox.SelectedValuePath = "EnumValue";
comboBox.DisplayMemberPath = "OtherProperty";

// 绑定ComboBox的SelectedValue到包含枚举的对象的属性
comboBox.SetBinding(ComboBox.SelectedValueProperty, new Binding("EnumValue") { Mode = BindingMode.TwoWay });

这样,ComboBox的初始SelectedItem就会被设置为包含该枚举的对象的值。当用户选择不同的项时,绑定的对象的属性也会相应地更新。在这个例子中,ComboBox将显示"Object 1"、"Object 2"、"Object 3"作为选项,而选中的项的EnumValue属性将被更新为相应的枚举值。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

007 C# Word批量转Pdf

(添加Interop.Microsoft.Office.Interop.Word.dll,Word互操作属性设置true。)...004 设置批量转换按钮 this.comboBox1.SelectedItem.ToString()是指comboBox1选取下拉列表内容。 这里,使用选择语句,针对转换格式进行了分别选择。...很显然,Src和this.comboBox1.SelectedItem.ToString()选取内容应该是相反。...转换后文件完整路径由三部分拼接而成。 Pth:包含 ”\“ 文件所在目录。 Nam: 去掉后缀名文件名。 Fnl: 包含 ”.“ 文件后缀名。 斜杠”\“和点”....“是十分重要且必要,千万不能漏写。 doc和docx互相转换 Wdc.SaveAs(文件路径,文件格式)。 97-2003doc文件格式枚举是0。 docx文件格式枚举是16。

1.2K00

【愚公系列】2023年11月 Winform控件专题 ComboBox控件详解

步骤2:在ComboBox属性窗口中设置以下属性:Items:指定ComboBox中要显示选项列表。SelectedIndex:指定ComboBox选择索引。默认-1,表示未选择任何选项。...;设置时必须将IntegralHeight属性设置false,而且DropDownHeight 一定要是默认106,如果下拉列表中数据项数量超过了5,则将会出现滚动条以便查看所有数据项。...DropDownStyle属性是ComboBox控件枚举类型,可选择有三种:DropDown:这是默认,此时ComboBox控件下拉列表以展开形式显示,用户可以手动点击下拉列表选择要显示选项...在这里,我们将ComboBox控件中奇数行设置红色,偶数行设置黑色。在实际开发中,可以根据需求自行修改绘制代码,实现自定义下拉列表项效果。...ComboBox控件包含两个重要属性,即SelectedItem和SelectedIndex。SelectedItemComboBox控件中当前选择项

1.9K12
  • CSharp中枚举

    前言 枚举(Enum)是一种常用数据类型,用于定义一组命名常量值。使用枚举可以增加代码可读性和可维护性。 在XAML中使用枚举时,可以通过引用枚举类型和指定枚举设置控件属性。...枚举定义 定义枚举类型 public enum Gender { Male, Female, Other } 在XAML中使用枚举 假设我们有一个 Person 类,其中包含一个.../> 数据绑定 在上述例子中,ObjectDataProvider 提供了枚举集合,可以通过数据绑定设置控件属性中。...在实际应用中,你可以根据需要调整枚举类型和数据绑定方式来满足特定场景和要求。 通过这种方式,你可以在WPF应用程序中有效地利用枚举类型来管理和展示数据。...字符串枚举 在C#中,枚举(Enum)通常由整数类型(如 int)表示。 这意味着枚举成员默认情况下是整数,而不是字符串。 然而,你可以为枚举成员指定字符串字面量,但底层仍然是整数。

    8410

    1-3 Winform 中常用控件(3

    图1-15 ComboBox组合框控件实现目标界面 根据图1-15所示,在窗体初始化时候加载部门信息列表框和组合框内,上下组合框DropDownStyle属性不同,上面DropDown类型,下面...在设置上下两个组合框控件时候,分别设置其属性DropDownStyle 属性DropDown和DropDownList类型。...代码加下: 小实验:在窗体初始化事件Form_Load中加载数据具体控件: private void Form011_Load(object sender, EventArgs e)        ...对话框窗口机制是一种典型重载过程,重载是通过MessageBox.Show()方法具体体现出来,关于Show方法重载类型如表1-4所示。...,"问询提示",MessageBoxButtons.YesNo); //  1、DialogResult属性用于获取或设置MessageBox.Show()方法返回一个在单击按钮时返回到父窗体

    2.4K10

    WPF 通过位处理合并图片

    WPF 如何需要读取解决方案图片,可以使用 GetResourceStream 方法,注意图片放在解决方案需要修改生成方式资源 在 WPF 读取资源是使用 URL 方式,我这里在解决方案放图片是在项目的文件夹...,可以通过下面的链接获取 pack://application:,,,/图片文件夹/图片名.jpg 获取资源代码很简单,但是需要将资源转换为图片,这里转换为图片时候因为下面需要读取图片颜色,需要修改图片格式...,最后将这个数组创建一张图片,也就是显示中间图片 先来写一个函数,这个函数传入了枚举 YimiXoujelneTi 和两个 byte 关于枚举请看下面 enum YimiXoujelneTi...{ Or, And, Xor, } 枚举包含三个,一个是或一个是与一个是异或,通过上面三个可以处理传入两个像素通道...blue = MupalSiluburwor(blue, yearcayralBawa[i], BlueDallstartaxaJembere.SelectedItem

    67310

    表现层设计模式

    PM 模型: PM中模型不是业务层,而是包含多个属性类,专门服务于视图层,含有展示视图所需所有数据。 视图: 视图是UI元素集合,UI元素绑定模型属性上。用户触发事件都将发送给展示器。...视图持有对展示器引用,模型通过展示器暴露给视图,视图不会暴露出任何接口。 展示器: 接收视图请求,调用表现层或业务逻辑层。 展示器持有模型对象引用,并且暴露公开方法和属性视图提供数据。 ?...3 PM模式 在给出正式PM模式之前,给出一个不标准PM例子。 PM模式中强调UI控件绑定模型属性上,但下面的例子,有点违背这一定义。...此外,视图会更新展示器公共属性Group。Group实际对应着视图层ComboBox控件。这里似乎有两个模型,一个是视图展示数据用模型,一个是展示器更新业务层数据用模型。两者可以合二一。...模型中属性绝大部分都可简单地绑定视图层控件上。 2)关于展示器。

    1.8K40

    WPF 通过位处理合并图片 读取图片读取图片像素合并两张图片界面

    WPF 如何需要读取解决方案图片,可以使用 GetResourceStream 方法,注意图片放在解决方案需要修改生成方式资源 ?...,但是需要将资源转换为图片,这里转换为图片时候因为下面需要读取图片颜色,需要修改图片格式 Bgra32 格式,这个格式就是使用 32 位 int 存放一个像素,一个像素里按照8位也是1个byte...合并两张图片 从上面的代码可以拿到两张图片每个像素,然后将两张图片像素合并为第三个像素放在一个新数组,最后将这个数组创建一张图片,也就是显示中间图片 先来写一个函数,这个函数传入了枚举 YimiXoujelneTi...Xor, } 枚举包含三个,一个是或一个是与一个是异或,通过上面三个可以处理传入两个像素通道 switch (soKooworstarWhisvemsal...欢迎转载、使用、重新发布,但务必保留文章署名林德熙(包含链接: https://lindexi.gitee.io ),不得用于商业目的,基于本文修改后作品务必以相同许可发布。

    2.3K20

    【我们一起写框架】MVVMWPF框架(三)—数据控件

    数据控件其实很好理解,它就是把UI控件中存储数据提取出来,好让ViewModel可以通过修改数据来控制UI变化;当然,为了更好控制UI变化,数据控件里还得包含一点管理UI属性。...ChangeTextBox属性TextUI控件TextBoxText属性上,这样我们就实现了数据联动。...并且代码中实例化了TextChangeCallBack委托,那么当Text数据变化时,委托就会触发。...和ItemsSource用来绑定UI控件ComboBox同名属性。...因为WPFUI控件被创建以后,要被添加到视觉树中,所以最终会被显示在屏幕上是包裹着控件视觉树;其中视觉树与控件是可以分离;比如控件中绑定数据是10行,而视觉树可以显示3行。

    2.4K30

    【愚公系列】2023年09月 WPF控件专题 ListBox控件详解

    以下是ListBox控件一些基本属性和用法: ItemsSource:指定ListBox数据源,可以是任何实现了IEnumerable接口对象。...ItemTemplate:用于定义ListBox中每个项样式。 SelectedItem:用于获取或设置ListBox中当前选中项。...1.属性介绍 常用ListBox控件属性: ItemsSource:绑定数据源集合。 SelectedItem:获取或设置ListBox中所选项。...ItemTemplate:指定ListBox中每个项展示模板。 IsSynchronizedWithCurrentItem:指示ListBox是否跟踪其所包含集合中当前项位置。...数据绑定:ListBox可以方便地绑定数据,例如绑定数据库中数据、XML文件中数据等等。 ListBox是WPF中非常重要控件之一,可用于许多不同应用程序场景。

    73600

    数据库之ADO.NET基础知识整理

    (多次打开问题:ConnectionState枚举) 关闭连接 //相当于设置了路障 释放资源 //相当于把路拆了,这块地可以盖楼了。...:visible        4.以laber控件Text保存一个,进行传递,并将该控件属性设置隐藏        5.添加控件中RowEnter方法,将数据显示一些文本框中          ...       comboBox1.Items.Add(new Area() { AreaId = -1, AreaName = "请选择" });        //area一个对象    comboBox1....SelectedIndex = 0;     //显示第一行 3.想要拿到控件选定时数据,可将其转换为所需对象用as     Areaarea= comboBox1.SelectedItem as...控件两大属性    1.DisplayMember属性,选择要显示内容 2.ValueMember属性,记录下来需隐藏内容 3.注意事项:ComboBox数据源绑定方法,会触发“选择项改变事件”

    1.9K20

    C# WPF mvvm模式下combobox绑定(list、Dictionary)

    ComboBox是一个非常常用界面控件,它数据源ItemsSource既可以绑定一个List列表,也可以是一个字典,本篇文章就讲这些内容展开讲解。...01 — 前言 ComboBox是一个非常常用下拉菜单界面控件,它数据源ItemsSource既可以绑定一个List列表,也可以是一个字典,本篇文章就讲这些内容展开讲解。...首先,讲解几个常用属性概念: ItensSource:用于指定下拉列表绑定List数据对象; SelectedIndex :下拉列表中选中行索引; DisplayMemberPath...:下拉列表中要显示List数据对象列,因为List数据对象可能会有多列; SelectedValuePath:下拉列表中,对应与显示List数据对象列,返回List数据对象列...枚举类型时: 枚举定义: public enum HumanSkinColors { Yellow, White, Black } 数据绑定

    5.3K10

    【愚公系列】2023年11月 WPF控件专题 2023秋招WPF高频面试题

    WPF高级篇832.解释SelectedItem、SelectedValue和SelectedValuePath之间区别?SelectedItem 属性返回您列表绑定整个对象。...然而,出于绑定目的,也可能有另一种情况,并不想得到整个 Category 对象绑定列表绑定结果,而是 Category 对象单个属性(例如它 ID 属性)。...假设您有一个 Product 对象,您视图绑定对象(具有 ProductName、Weight 等属性)。...有一个 ComboBox 绑定一个类别列表(通过 ItemsSource)。 将产品上 CategoryID 属性绑定为选定(使用 SelectedValue 属性)。...“ControlTemplate”通常只包含“TemplateBinding”表达式,绑定回控件本身属性,而“DataTemplate”将包含标准绑定表达式,绑定其“DataContext”属性(

    49522

    C# WPF控件ComboBoxEdit数据绑定及模糊匹配

    “ 引言部分,总领全篇文章中心内容。” 群友提问: C#纯小白票友,求一个WPFcombobox自动完成。就是在文本框输入字符(包括中文),下拉框自动过滤出符合条件项目列表?...01 实现思路 首先combobox默认是不允许编辑,需要打开编辑功能那个需要 IsEditable="True" 我这里以dev控件ComboBoxEdit进行示范 step1:打开vs,创建一哥应用程序...,我这里命名为ControlTest; step2:定义数据模型,我这里定义一个枚举量(如果是类的话会更容易点) public enum HumanSkinColors { //Yellow...HumanSkinColors))) { HumanSkinList.Add(HumanSkinColor); } } step5:绑定数据源控件...ComboBoxCtr.ItemsSource = HumanSkinList; step6:在KeyUp事件中进行输入匹配,匹配不到就重新绑定全部枚举量 private void ComboBoxCtr_KeyUp

    2K20

    关于我知识盲区之ItemsSource分享~

    为何说它是知识盲区呢 1、首先很多人应该都和我一样知道itemsSource,在 Windows 应用程序中很多控件都提供了 DataSource 属性,并将 DataSet 或 DataTable 直接赋给属性...2、以前我只知道如何去使用控件绑定数据,显示数据。当数据源发生改变时重新绑定数据源,初始化数据。...下面有一个例子,我们可以看到,初始化界面的时候,数据绑定了一次(mygard.ItemsSource),当点击按钮时候,itemsource就发生改变了,这个是为什么呢?...可以枚举实现 IEnumerable 接口任何集合。 但是,若要设置动态绑定,以便集合中插入或删除操作自动更新 UI,则集合必须实现 INotifyCollectionChanged 接口。...若要完全支持将数据绑定对象传输到绑定目标,则集合中支持可绑定属性每个对象都必须实现相应属性更改通知机制,例如 INotifyPropertyChanged 接口 这些都是微软解读,我就不亲自解读了

    1.1K20
    领券