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

Windows窗体数据绑定DisplayMember自定义类的子属性

在Windows窗体数据绑定中,DisplayMember用于显示数据项的特定属性。如果您想要显示自定义类的子属性,可以使用DataBinding的FormatEvent事件来实现。

以下是一个示例代码,演示如何在Windows窗体中使用DataBinding的FormatEvent事件来显示自定义类的子属性:

代码语言:csharp
复制
public class Person
{
    public string Name { get; set; }
    public Address Address { get; set; }
}

public class Address
{
    public string City { get; set; }
}

private void Form1_Load(object sender, EventArgs e)
{
    var persons = new List<Person>
    {
        new Person { Name = "John", Address = new Address { City = "New York" } },
        new Person { Name = "Jane", Address = new Address { City = "Los Angeles" } }
    };

    comboBox1.DataSource = persons;
    comboBox1.DisplayMember = "Name";
    comboBox1.ValueMember = "Address.City";
    comboBox1.Format += ComboBox1_Format;
}

private void ComboBox1_Format(object sender, ListControlConvertEventArgs e)
{
    var person = (Person)e.ListItem;
    e.Value = $"{person.Name}, {person.Address.City}";
}

在上面的示例中,我们有一个Person类,其中包含一个名为Address的子属性。我们将ComboBox的DataSource设置为Person对象列表,并将DisplayMember设置为Name属性。然后,我们将ValueMember设置为Address.City子属性。最后,我们使用FormatEvent事件来格式化显示文本,以便在ComboBox中显示子属性。

总之,如果您想要在Windows窗体数据绑定中显示自定义类的子属性,可以使用DataBinding的FormatEvent事件来实现。

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

相关·内容

可视化数据库设计软件有哪些_数据库可视化编程

3.ADO.NET对象 数据库应用程序设计步骤 1.创建解决方案项目 2.添加Windows窗体 3.设计用户界面 4.创建事件处理程序和编译、调试、运行程序 数据源控件与数据访问窗体控件...2)BindingNavigator控件 1.BindingNavigator控件作用 是一个数据记录导航控件,创建了一些标准化方法供用户搜索和更改 Windows 窗体数据,与 BindingSource...2)Label控件 1.作用 Label控件用于显示数据表中当前记录中字段值。 2.绑定属性 DataBindings属性用于绑定数据源。 Text属性用于选择数据源及字段。...3)TextBox控件 1.作用 TextBox控件用于显示及编辑数据表中当前记录中字段值。 2.绑定属性 DataBindings属性用于绑定数据源。...Text属性用于选择数据源及字段。 4)ListBox控件 1.作用 作用1:用列表方式显示数据表中某字段值。

6.7K40

winform笔记

1.combobox 数据绑定 comboBox.DisplayMember = "需要读取列1(name)"; //显示到comboBox值 comboBox.ValueMember =..."需要读取列2(id)"; //comboBox真正值 comboBox.DataSource = ds.Tables["虚拟列名"];//绑定数据源 2.FlowLayoutPanel支持鼠标滚轮滚动...,并传值 (1)自己实现获取数据方法 在dialog中定义获取数据方法 public String getValue(){ return "aaa"; } 然后在调用dialog主程序中如下调用...可以参看MSDN: http://msdn.microsoft.com/zh-cn/library/system.windows.forms.form.close.aspx 这样,主程序就获取了用户在自定义对话框...(2)解封装 主窗体定义一个存放数据,这里仅用一个string代替 然后在dialog如下代码 this.DialogResult = DialogResult.OK; Main mainForm

1.5K20

DevExpress.LookUpEdit控件实现自动搜索定位功能 兼使用方法(looUpEdit可编辑)

LookUpEdit.Properties.AutoSearchColumnIndex设置自动搜索栏位序号,下拉窗体第一个栏位为0,依此类推,此属性配合SearchMode=OnlyInPopup时有效...AutoComplete:配合ImmediatePopup=True时使用,当用户在输入框按任一可见字符键时立即弹出下拉窗体,并在输入框自动完成您想要输入数据,同时下拉窗体自动匹配最佳记录。...AutoComplete模式仅匹配DisplayMember对应字段值。 特点:能在输入框显示匹配数据,并且下拉窗体显示匹配记录。 效果图如下: ?...AutoFilter:配合ImmediatePopup=True时使用,当用户在输入框按任一可见字符键时立即弹出下拉窗体,并在输入框自动完成您想要输入数据,同时下拉窗体自动过滤掉不匹配记录。...特点:能在输入框显示匹配数据,并过滤过不想要记录。 ?

1.5K20

在DataGridView控件中加入ComboBox下拉列表框实现

可以实现下拉列表框,但这样列会在整列中都显示下拉列表框,不太美观,而且还要用代码实现数据绑定。...首先新建一个Windows应用程序,将主窗体重命名为MainForm,在MainForm中加入一个DataGridView控件,命名为dgv_User。如下图所示: ?   ...打开窗体代码窗口,在代码窗口中声明一个ComboBox控件 // 定义下拉列表框 private ComboBox cmb_Temp = new ComboBox();   我们要绑定下拉列表框功能是选择性别...(或者数据集),然后绑定到DataGridView中,这里我们为了避免连接数据库,手中构造一个数据库表,代码如下: private void BindData() {     DataTable dtData...DataGridViewColumnEventArgs e)         {             this.cmb_Temp.Visible = false;         }         // 绑定数据表后将性别列中每一单元格

3.5K20

.Net语言 APP开发平台——Smobiler学习日志:快速实现手机上常见GridView

最前面的话:Smobiler是一个在VS环境中使用.Net语言来开发APP开发平台,也许比Xamarin更方便 一、目标样式 我们要实现上图中效果,需要如下操作: 1.从工具栏上”Smobiler...Components”拖动一个GridView控件到窗体界面上 2.修改GridView控件属性 a.load事件代码 VB: Private Sub TestGridView2_Load...2015.09.09"; this.GridView1.DataSource = matTable; this.GridView1.DataBind(); } b.Layout属性...新建MobileForm项,命名为MessageShow2,并拖入一个Image控件和三个Label控件,如图1 三个Label控件DisplayMember属性分别绑定需要显示列,如图2 GridView...Layout属性绑定新建窗体MessageShow2,如图3 图1 图2 图3 3.Smobiler窗体设计界面显示效果 二、手机效果显示

53420

C#自定义泛型绑定ComboBox控件

C# WinForm ComboBox 自定义数据项 (ComboBoxItem ) WinForm下ComboBox默认是以多行文本来设定显示列表, 这通常不符合大家日常应用,  因为大家日常应用通常是键.../值对形式去绑定....我用是下面这个实例作为它一个项:     ///      /// ComboBox项     ///      class ListItem : System.Object...:             //将数据属性与ComboBox属性对应             drpTest.DisplayMember = "Text";        //显示             ...//绑定数据  绑定数据之后, 就可以对其进行默认选择项设置, 取值等操作:             drpTest.SelectedValue = "4";        //设定选择项

1.5K10

聊聊Spring中数据绑定 --- 属性访问器PropertyAccessor和实现DirectFieldAccessor使用【享学Spring】

前言 本篇文章聊聊Spring数据访问、绑定体系中一个非常重要组成: 属性访问器(PropertyAccessor)。...首先提醒各位,注意此接口和属性解析器(PropertyResolver)是有本质区别的:属性解析器是用来获取配置数据,详细使用办法可参考:【小家Spring】关于Spring属性处理器PropertyResolver...(例如对象bean属性或对象中字段)公共接口。...} 此访问器将集合和数组值转换为相应目标集合或数组,当然还解决了级联属性(嵌套属性问题~ 需要特别注意是:AbstractNestablePropertyAccessor这个抽象在Spring4.2...如果某个值要给赋值给bean属性,Spring都会把这个值包装成ProperyValue对象。 PropertyTokenHolder作用是什么? 这个作用是对属性访问表达式细化和归类。

2.2K20

WPF|快速添加新手引导功能(支持MVVM)

Guide,这个属性是与提示框绑定展示: 第一个参数定义了引导提示框标题 “快速添加新手引导” 第二个参数定义了引导提示框提示内容 “这样添加新手引导,或许比较优雅” 第二个属性 Guides,...GuideControlBase:引导控件辅助 BindControlToGuideConverter:引导信息与引导目标控件绑定转换器 GuideHelper:引导帮助绑定目标控件引导信息使用...ListBox子项ListBoxItem内,而引导控件GuideControl可以在ListBox外层容器之上; GuideWindow 用于贴在目标控件所在窗体上,GuideWindow 作为目标控件窗体窗体...这两种方式(GuideControl 和 GuideWindow)总体呈现效果是一样,目标控件所在窗体自定义窗体,Demo能正常显示下面的效果,普通窗体需要对目标控件 Clip 位置和提示框位置进行偏移处理...控件带两个新手引导Demo如下: 新手引导Demo一 GuideControl方式,站长推荐,即以控件方式显示新手引导,点击看代码: 新手引导Demo二 GuideWindow方式,即以窗体方式显示新手引导

2.4K10

【炫丽】从0开始做一个WPF+Blazor对话小程序

3.1 WPF自定义窗体一般实现是设置窗体三个属性WindowStyle="None" AllowsTransparency="True" Background="Transparent",即可隐藏默认窗体边框...3.3 Blazor实现自定义窗体效果上面使用了WPF制作自定义窗体,有没有这种需求,把菜单放置到标题栏?这个简单,WPF能很好实现。如果放Tab控件呢?...5.3.2 发送业务数据即第二个操作:打开窗体B后,再点击主窗体A【桃心】按钮,发送了SendRandomDataMessage消息,窗体B第二个TabItem Header显示了消息传来数字...:InvokeAsync:将Number赋值给变量tagCount代码是在InvokeAsync方法里执行,这个和WPF里Dispatcher.Invoke是一个意思,相当于接收数据是在线程,而赋值这个操作会即时绑定到...Visible绑定值,同理需要在InvokeAsync()中处理数据接收,也需要调用StateHasChanged通知UI数据变化。

7.9K60

C#+WPF开发无人值守地磅称重系统

WPF 开发平台支持广泛应用开发功能,包括应用模型、资源、控件、图形、布局、数据绑定、文档和安全性。...它是 .NET Framework 子集,因此,如果你曾经使用 ASP.NET 或 Windows 窗体通过 .NET Framework 构建应用程序,应该会熟悉此编程体验。...而 WinForms 则是基于传统命令式编程模型,需要在代码中手动设置每个控件属性和事件处理程序。...数据绑定:WPF 有一个强大数据绑定系统,可以将 UI 元素和数据源相互绑定,使应用程序更容易管理和更新数据。WinForms 也支持数据绑定,但不如 WPF 灵活。...在测量阶段,容器遍历所有元素,并询问元素它们所期望大小。在排列阶段,容器在合适位置放置元素。

2800

.NET Core 3 WPF MVVM框架 Prism系列之命令

系列之数据绑定中知道prism实现数据绑定方式,我们按照标准写法来实现,我们分别创建Views文件夹和ViewModels文件夹,将MainWindow放在Views文件夹下,再在ViewModels...五.创建复合命令    prism提供CompositeCommand支持复合命令,什么是复合命令,我们可能有这种场景,一个主界面的不同窗体都有其各自业务,假如我们可以将上面的例子稍微改下,我们分为三个不同窗体...,三个分别来显示当前年份,月日,时分秒,我们希望在主窗体提供一个按钮,点击后能够使其同时显示,这时候就有一种关系存在了,主窗体按钮依赖于三个窗体按钮,而窗体按钮不依赖于主窗体按钮 下面是创建和使用一个...prism标准复合命令流程: 创建一个全局复合命令 通过IOC容器注册其为单例 给复合命令注册子命令 绑定复合命令 1.创建一个全局复合命令    首先,我们创建一个库项目...2.通过IOC容器注册其为单例    我们创建一个新项目作为主窗体,用来显示窗体和使用复合命令,关键部分代码如下: App.cs代码: using Prism.Unity; using Prism.Ioc

1.7K50

【炫丽】从0开始做一个WPF+Blazor对话小程序

3.1 WPF自定义窗体 一般实现是设置窗体三个属性WindowStyle="None" AllowsTransparency="True" Background="Transparent",即可隐藏默认窗体边框...3.3 Blazor实现自定义窗体效果 上面使用了WPF制作自定义窗体,有没有这种需求,把菜单放置到标题栏?这个简单,WPF能很好实现。 如果放Tab控件呢?...Message 消息抽象,用于定义消息类型,具体消息需要继承该类,比如后面的打开窗体消息OpenSecondViewMessage。...5.3.2 发送业务数据 即第二个操作:打开窗体B后,再点击主窗体A【桃心】按钮,发送了SendRandomDataMessage消息,窗体B第二个TabItem Header显示了消息传来数字...Visible绑定值,同理需要在InvokeAsync()中处理数据接收,也需要调用StateHasChanged通知UI数据变化。

10.2K20

Python打包GUI界面组件汇总,Tkinter(TK)实例代码

Tkinter绑定了 Python Tk GUI 工具集 ,就是Python 包装Tcl代码,通过内嵌在 Python 解释器内部 Tcl 解释器实现, Tkinter调用转换成 Tcl 命令...对比Tk和其它语言绑定,比如 PerlTk ,是直接由 Tk 中 C 库实现。...Tkinter优缺点: 历史最悠久, Python 事实上标准 GUI , Python 中使用 Tk GUI 工具集标准接口,已经包括在标准 Python Windows 安 装中,著名 IDLE...250x150") #设置窗体物理大小(长x高) MainForm.title("三酷猫") #设置窗体标题属性 MainForm['background']='LightSlateGray' #设置窗体背景颜色属性...","3","4","5","6","7"]: lb_show1.insert(END,item) s_show.config(command=lb_show1.yview) #滚动条与列表框绑定连动命令属性

6.7K21

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

除了像Winform那样在“Windows 窗体”上删除控件之外,WPF 还为应用程序开发提供了额外功能改善,包括丰富用户界面、动画等等。...Dispatcher: 一个抽象基,用于绑定到一个线程上。与Windows窗体类似,WPF也要求仅从创建线程中调用方法和属性。...依赖属性可以依赖其他输入,例如主题和用户喜好。依赖属性数据绑定,动画,资源和样式一起使用。Visual: 所有可见元素都是Visual。...它们通过数据绑定和依赖属性或多个属性进行通信。 ViewModel 是一个非可视。 MVVM 设计模式不派生自任何基于 WPF 。 ViewModel 不直接知道View。...23.说出使用WPF而不是Windows窗体一些优点使用 WPF 代替 Windows 窗体优点: XAML 使更容易创建和编辑 GUI,并允许在设计模式 (XAML) 和后台代码(C#、VB.NET

40822

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

在Winform中,我们可以通过继承Form来创建自定义窗体窗口。Form包含了许多属性、事件和方法,可以用于设置和控制窗口各种属性和行为。...添加窗体方式有两种,一种是在代码中创建一个新窗体,另一种是在窗体设计器中创建一个窗体控件。...窗体,并通过设置childFormMdiParent属性将其设置为MainForm窗体,最后通过调用childFormShow方法显示该窗体。...自定义窗体:通过在Form上添加其它控件和自定义布局,可以创建各种不同类型自定义窗体。3.具体案例创建一个Winform应用程序,并在Form1中添加一个Label控件和一个Button控件。...消息。 Form1是我们窗体,它继承自System.Windows.Forms.Form。 我们还使用了Windows Forms设计工具来构建我们Winform应用程序。

1.2K21

C#学习笔记—— 常用控件说明及其属性、事件

按钮控件 6、Button 控件 Button控件又称按钮控件,是 Windows应用程序中最常用控件之一,通常用它来执行命令。...6.用户自定义对话框 除了可以使用Windows自带标准对话框外,用户还可以把自己设计窗体定义成对话框。使用自定义对话框有以下几个要点。...22、用户自定义对话框 除了可以使用Windows自带标准对话框外,用户还可以把自己设计窗体定义成对话框。使用自定义对话框有以下几个要点。...一个窗口在功能上可能与父窗口其他窗口不同,例如,一个窗口可能用于编辑图像,另一个窗口可能用于编辑文本,第 3 个子窗口可以使用图形来显示数据,但是所有的窗口都属于相同MDI父窗口。...值为 true时,表示是窗体,值为false时,表示不是窗体。 (2)MdiParent属性:该属性用来指定该窗体MDI父窗体

9.5K20

c#实战教程_ps初学者入门视频

定义新窗体名也为FormChild。此窗体作为主窗体窗体。 (4) 放RichTextBox1控件到窗体。...其属性MergeType=MergeItems,表示打开窗体后,主窗体窗体属性MergeOrder相同顶级菜单项弹出菜单中的菜单项合并为一个弹出菜单。属性MergeOrder=0。...10.2 ASP.Net控件数据绑定 所谓数据绑定技术就是把数据某个或者某些数据绑定到控件某些属性上面的一种技术。...单击属性DataBinding后标题为…按钮,打开Label1数据绑定对话框,选择自定义绑定表达式(c),在其下编辑框中输入:DropDownList1.SelectedItem.Text。...10.2.2 基于变量数据绑定 ASP.NET 数据绑定语法支持绑定到公共变量、页属性和页上其他控件属性。下面的示例说明如何绑定到公共变量和页上简单属性

15.5K10
领券