DataGridView的下拉DataGridViewComboBoxColumn的数据绑定问题

DataGridView的下拉DataGridViewComboBoxColumn的数据绑定问题

需求:左边这列固定x行,右边显示下拉,并且赋上默认值

csharp 复制代码
 public void Set()
        {
            // 添加需要固定显示的行数
            dataGridView1.Rows.Add("早班";
            dataGridView1.Rows.Add("中班");
            dataGridView1.Rows.Add("晚班");
            
            // 构造数据
            DataTable dt = new DataTable();
            dt.Columns.Add("ID");
            dt.Columns.Add("Name");

            DataRow dr = dt.NewRow();
            dr["ID"] = "1";
            dr["Name"] = "张三";
            dt.Rows.Add(dr);

            dr = dt.NewRow();
            dr["ID"] = "2";
            dr["Name"] = "李四";
            dt.Rows.Add(dr);

            dr = dt.NewRow();
            dr["ID"] = "3";
            dr["Name"] = "王五";
            dt.Rows.Add(dr);

            dr = dt.NewRow();
            dr["ID"] = "4";
            dr["Name"] = "王六";
            dt.Rows.Add(dr);


			//  绑定数据
            Column2.DataSource = dt;
            Column2.DisplayMember = "Name";  // 显示值
            Column2.ValueMember = "ID";		 // 实际值
			
			//  赋值
            for (int i = 0; i < 3; i++)
            {
                dataGridView1.Rows[i].Cells["Column2"].Value = dt.Rows[i]["ID"].ToString();
            }
        }

需要注意的地方:

dataGridView1.Rows[i].Cells["Column2"].Value = dt.Rows[i]["ID"].ToString();

这个Value赋值的时候,要注意数据类型,因为有的时候这个ID是Int类型的,这个Value就不能赋值String,否则会导致显示错误!!

相关推荐
清风与日月18 小时前
c# 集成激光雷达(以思岚A1为例)
开发语言·c#
无极小卒19 小时前
如何在三维空间中生成任意方向的矩形内部点位坐标
开发语言·算法·c#
the白勺20 小时前
RabbitMQ-基础-总结
开发语言·c#
专注VB编程开发20年1 天前
C#VB.NET中实现可靠的文件监控(新建、删除、改名、内容修改等事件的准确捕获)
spring·c#·.net·文件监控
yi碗汤园1 天前
【一文了解】C#反射
开发语言·unity·c#
T.Ree.1 天前
汇编_读写内存
开发语言·汇编·c#
czhc11400756631 天前
C#1114 枚举
开发语言·c#
曹牧1 天前
C#中,GetValueOrDefault方法
c#
SunnyDays10111 天前
使用 C# 实现 Excel 与 DataTable 相互转换
c#·excel转datatable·datatable转excel
獨枭2 天前
C# 本地项目引用失效与恢复全攻略
开发语言·c#·visual studio