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

如何在DataGridView中从ComboBoxColumn中选择项目时显示表的属性。?

在DataGridView中,如果想要在ComboBoxColumn中选择项目时显示表的属性,可以通过以下步骤实现:

  1. 创建一个DataGridView,并添加一个ComboBoxColumn作为其中的一列。
  2. 设置ComboBoxColumn的数据源,可以是一个数据表、数据集或者自定义的数据源。
  3. 在ComboBoxColumn中设置DisplayMember和ValueMember属性,分别指定要显示的属性和对应的值。
  4. 为DataGridView的CellFormatting事件添加处理程序。
  5. 在CellFormatting事件处理程序中,判断当前列是否为ComboBoxColumn,并且当前单元格的值不为空。
  6. 如果满足条件,获取ComboBoxColumn的数据源,并根据当前单元格的值找到对应的属性值。
  7. 将属性值赋给当前单元格的显示值。

以下是示例代码:

代码语言:txt
复制
// 创建一个DataGridView
DataGridView dataGridView = new DataGridView();

// 添加一个ComboBoxColumn
DataGridViewComboBoxColumn comboBoxColumn = new DataGridViewComboBoxColumn();
dataGridView.Columns.Add(comboBoxColumn);

// 设置ComboBoxColumn的数据源
comboBoxColumn.DataSource = yourDataSource;

// 设置ComboBoxColumn的DisplayMember和ValueMember属性
comboBoxColumn.DisplayMember = "PropertyName";
comboBoxColumn.ValueMember = "PropertyValue";

// 为DataGridView的CellFormatting事件添加处理程序
dataGridView.CellFormatting += DataGridView_CellFormatting;

// CellFormatting事件处理程序
private void DataGridView_CellFormatting(object sender, DataGridViewCellFormattingEventArgs e)
{
    // 判断当前列是否为ComboBoxColumn,并且当前单元格的值不为空
    if (dataGridView.Columns[e.ColumnIndex] is DataGridViewComboBoxColumn && e.Value != null)
    {
        // 获取ComboBoxColumn的数据源
        var dataSource = ((DataGridViewComboBoxColumn)dataGridView.Columns[e.ColumnIndex]).DataSource;

        // 根据当前单元格的值找到对应的属性值
        var propertyValue = dataSource.AsEnumerable()
            .FirstOrDefault(row => row.Field<string>("PropertyValue") == e.Value.ToString())
            ?.Field<string>("PropertyName");

        // 将属性值赋给当前单元格的显示值
        if (propertyValue != null)
        {
            e.Value = propertyValue;
            e.FormattingApplied = true;
        }
    }
}

这样,在DataGridView中选择ComboBoxColumn中的项目时,会显示对应的表的属性值。请注意,示例代码中的"yourDataSource"需要替换为实际的数据源。

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

相关·内容

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

6)将节点服务器资源管理器拖到 Visual Studio .NET 项目中,从而创建引用数据资源或监视其活动数据组件。...(新建一个“Windows应用程序”,然后在创建项目上右击,在弹出快捷菜单上选择“添加”→“新建项”命令,“模板”选择“数据集”); 第四,对已创建数据集,单击“添加”按钮后即进入数据集窗口,服务器资源管理器中选择一个数据连接...EG: 创建学生档案管理系统类型化数据集 1.创建数据集DsStudentSys.xsd 选择学生档案管理系统项目,右击选择快捷菜单“添加”→“新建项”,在设计界面中选择“模板”为“数据集”...2)Label控件 1.作用 Label控件用于显示数据当前记录字段值。 2.绑定属性 DataBindings属性用于绑定数据源。 Text子属性用于选择数据源及字段。...3)TextBox控件 1.作用 TextBox控件用于显示及编辑数据当前记录字段值。 2.绑定属性 DataBindings属性用于绑定数据源。

6.7K40

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

例如:dataGridView1.AllowUserToAddRows = true;AllowUserToDeleteRows:设置为True,会允许用户删除表格中选行。...属性可以帮助我们更好地去设置DataGridView控件显示效果。...具体步骤如下:打开Winform项目,拖拉一个DataGridView控件到窗体;添加要显示列,设置列属性;设置RowTemplate属性,例如设置行背景颜色:dataGridView1.RowTemplate.DefaultCellStyle.BackColor...可以通过设置列属性来控制哪些列可以过滤,以及过滤条件。数据选择:DataGridView控件可以允许用户选择一行或多行数据。可以通过设置控件属性来控制选择模式,单选、多选等。...为该数据添加四个字段:ID、Name、Gender和Age。Step 4: 编写数据访问层代码在项目中添加一个名为CustomerDAL类,用于访问数据库。在该类编写CRUD操作代码。

49211

003 C# 巧做学习强国题库查询工具

查询按钮 这个控件需要修改地方很少,你可以简单了解下。 数据显示 数据显示则是使用了dataGridView控件。 不得不承认,这个控件特别像Access数据库界面。...接着,我们在属性窗口设置一下相关属性。 通过调整控件属性,达到我们预期效果。 本期,以图文方式给你展示。 控件具体属性对应效果,不一一列示。 今后,如有需要,我希望以视频实操演示方式解释说明。...第三,string Select = "SELECT * FROM 学习题库 WHERE 题目 like '%" + textBox1.Text + "%'"; 表示数据库[学习题库]查询与textBox1...这意味着,你输入关键词需要前后衔接连贯。 第四,在内存数据库存储、输出过程代码。 你也需要重点掌握。...等我学会了,一定在第一间告知你。

2.3K00

DataGridView控件用法一:数据绑定

DataGridView控件,可以显示和编辑来自多种不同类型数据源表格数据。 将数据绑定到DataGridView控件非常简单和直观,在大多数情况下,只需设置DataSource属性即可。...在绑定到包含多个列表或数据源,只需将DataMember属性设置为指定要绑定列表或字符串即可。...一、非绑定模式 所谓非绑定模式就是DataGridView控件显示数据不是来自于绑定数据源,而是可以通过代码手动将数据填充到DataGridView控件,这样就为DataGridView控件增加了很大灵活性...在绑定到包含多个列表或数据源,只需将DataMember属性设置为指定要绑定列表或字符串即可。....DataMember="名";//必须要设置DataMember属性,指定要绑定到DataSet哪张 第五种: ArrayList al=new ArrayList(); this.dataGridView1

3.7K20

使用DataGridView进行增删改查,并同步到数据库

DataGridView控件具有极高可配置性和可扩展性。它提供有大量属性、方法和事件,能够用来对该控件外观和行为进行自己定义。...以下通过一个小样例来展示DataGridView进行增删改查,并同步到数据库功能。 窗口展示: 用户需求: 1.当窗口显示,将数据库中用户数据显示出来。...2.选中一行,运行删除操作,同一候在数据库对应数据被删除。 3.双击某个数据,进行编辑,或者在空白行加入新数据,然后点击更新,数据库随之更新。...DataTable DataGridView1.DataSource = DT '将DataTable数据传给DataGridView1显示 End Sub '更新操作...Update方法将数据数据提交到数据库。

4K20

期末作业C#实现学生宿舍管理系统

14]由于文章是在一点点更新,后面增加数据就在对应文章写入,下面的是用户登录、注册以及供用户列表显示 新建demo数据库,并在该数据库建立两个数据:admin、user admin...表字段设计如下: user表字段设计如下: 这里仅仅放入两个,完整项目请下载代码 ---- 登录设计 登录页面设计 这里我们通过可视化工具进行设计,新建一个窗口为FORM1这是设计出来样子...去user查询其他信息即可,所以borrowuser_id需要和userid对应绑定(很多同学在设计时会将多个重复信息放在同一个,如果在borrow中加入了room_num字段这样的话就不方便修改了...`) VALUES (NULL, '1', CURRENT_TIMESTAMP, '0'); (上面的user_id为1是因为我user中有一个id为1用户,我们先用假数据显示,后面再通过前端完成借阅操作...窗体优化 在整个项目中窗体太多不美观,如果能实现点击按钮直接显示就能提升用户体验性,可参考这篇文章 C#实现多窗口切换:Panel详细教程(亲测) 对项目完成优化后效果如下: 20220613_

20330

C# 可视化程序设计机试知识点汇总,DBhelper类代码

类型数据 DataTable dt = DBHelper.getDataTable(sql1); //将返回结果绑定到DataGridView控件数据源 this.dataGridView1.DataSource...//调用DBHelper类查询方法,返回DataTable类型数据 DataTable dt = DBHelper.getDataTable(sql1); // DisplayMember为显示文本值..." //将返回结果绑定到DataGridView控件 this.comboBox1.DataSource = dt; 根据条件查询并重新绑定到DataGridView控件(点击查询按钮,模糊查询)...; //返回 return; } 第三步、定义sql语句(根据typeId修改) //(typeID是全局变量,DataGridView控件cellClick...; } 删除(Click事件) //定义sql语句(typeID是全局变量,DataGridView控件cellClick事件获取选中隐藏类型ID) string sql = string.Format

7.7K20

使用C#开发数据库应用程序

();//退出应用程序方法 } 规范: 菜单条和菜单项命名: 为菜单设置Name属性,加前缀ms,:msUser。...Items 列表框中所有的项 Text 当前选定文本 SelectedIndex 当前选定项目的索引号,列表框每个项都有一个索引号,0开始 SelectedItem 获取当前选定项...SelectedIndex 当前选定项目的索引号,列表框每个项都有一个索引号,0开始 SelectedItem 获取当前选定项 (7)分组框【GroupBox】 (8)面板【Panel...(1)不使用SqlCommandBuilder直接调用Update()方法 (2)利用DataGridView显示数据集中,没有为它列设置DataPropertyName属性 8-4:综合实例...详细请看P214页 (1)创建窗体,设计窗体界面 (2)设置窗体DataGridView属性 (3)填充数据集,显示数据 (4)将修改后数据提交到数据库 (5)实现按性别筛选功能 8-

5.8K30

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

如果用户选择了一个文件并单击“确定”按钮,则会将文件文本内容显示在一个MessageBox。Filter属性可以帮助您过滤文件类型,只显示您指定文件类型。...如果你应用程序需要支持早期版本Windows操作系统(Windows XP),则应该避免使用此属性。...当ShowReadOnly属性为true,文件选择对话框中将显示只读属性文件;当ShowReadOnly属性为false,文件选择对话框中将不显示只读属性文件。...当ShowHelp属性为true,文件选择对话框中将显示帮助按钮;当ShowHelp属性为false,文件选择对话框中将不显示帮助按钮。...这三个属性都是在使用OpenFileDialog控件,通过设置控件属性来控制文件选择对话框显示方式。

51611

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

本文介绍一种只在当前编辑单元格显示下拉列表框方法,供大家参考。   ...    cmb_Temp.DataSource = dtSex;     cmb_Temp.DropDownStyle = ComboBoxStyle.DropDownList; }   通常情况下我们都是数据库获取数据...(或者数据集),然后绑定到DataGridView,这里我们为了避免连接数据库,手中构造一个数据库,代码如下: private void BindData() {     DataTable dtData...控件     this.dgv_User.Controls.Add(cmb_Temp); }   当用户选择单元格移动到性别这一列,我们要显示下拉列表框,添加如下事件 private void dgv_User_CurrentCellChanged...控件             this.dgv_User.Controls.Add(cmb_Temp);         }         // 当用户移动到性别这一列单元格显示下拉列表框

3.5K20

PLC编程基础

(3)保存工程 当一个新PLC被添加到工程时候,将创建以下空: 1)空本地符号;2)全局符号;3)IO;4)PLC内存数据;5)PLC设置数据。...(1)按照以下步骤来生成符号 1)单击图表窗口,在工具栏中选择查看本地符号按钮 。 2)工具栏选择新建符号按钮 ,符号插入对话框将被显示。...11)名称或者地址栏中选择‘RedTimerDone’,然后选择确定按钮。 12)在接触点旁边插入一条新指令,显示新建指令对话框。...1)选择工程工作区PLC 对象 2)工程工具栏切换PLC监视按钮。 3)程序执行时,可以监视梯形图中数据和控制流,例如,连接选择和数值增加。...选择工具栏取消在线编辑按钮,可以取消在确认改变之前所做何在线编辑。 版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。

2.5K10

程序员你知道吗?C# 也可以连接和操作Access数据库

连接AccessDemo 数据库创建成功,下面以Winform为例做链接Access数据库操作: 创建Winform项目,并添加DataGridView控件用以显示数据 ?...读取Access并显示到界面: 为了方便对数据库数据操作,利用面向对象思想,创建数据库对应Model类: 执行ExecuteDataReader方法,获取所有数据显示DataGridView: ?...以上算是连接操作数据库读取形式。想进行增删改其他操作,请直接调用对应方法即可。...小编使用是Win7 64位系统进行测试,管理工具中所列出来是64位配置源。在32位系统应该会显示。 在64位系统,是包含64位和32位两个数据源程序。...Winform项目打开,添加DataGridView。为DatagridView添加指定数据源。 选择数据库,点击下一步: ? ? 选择数据集: 新建连接: ?

3.8K20

不使用反射,“一行代码”实现Web、WinForm窗体表单数据填充、收集、清除,和到数据库CRUD

问题篇:     昨天在CSDN看到这样一个帖子:“苦逼三层代码”: 采用传统三层架构写代码,每个数据都要定义一个实体对象,编写后台时候, Web层需要针对页面的用户输入逐个手动编写赋值到实体对象各个属性...看到跟帖,大部分都说使用ORM解决这个问题,但我觉得ORM还是没有解决贴主几个问题: 每个数据都要定义一个实体对象 页面的用户输入逐个手动编写赋值到实体对象各个属性 很多,代码重复量大,典型苦逼代码工...实战篇:     按照这个方法,我在PDF.NET开发框架实现了本文标题说功能,最近还做了一个简单例子,大家可以去开源项目网站下载:     项目网址: http://pwmis.codeplex.com...添加前,在工具箱增加一个项:PDF.NET DataForm,然后在资源管理器中选择Windows数据控件组件文件,将它“拖放”到刚才建立 PDF.NET DataForm下面 ?    ... UserBindingList = new BindingList(); //填充集合代码,就是将数据数据库查询出来,然后放到该集合,代码略 this.dataGridView1

2.6K80
领券