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,否则会导致显示错误!!

相关推荐
SteveDraw12 分钟前
C++动态链接库封装,供C#/C++ 等编程语言使用——C++动态链接库概述(总)
开发语言·c++·c#·封装·动态链接库
Kookoos1 小时前
性能剖析:在 ABP 框架中集成 MiniProfiler 实现性能可视化诊断
后端·c#·.net·abp vnext·miniprofiler
阿翰3 小时前
自动 GitHub Readme 20 种语言翻译平台 - OpenAiTx 开源免费
c#·.net
枫叶kx7 小时前
1Panel运行的.net程序无法读取系统字体(因为使用了docker)
c#
军训猫猫头12 小时前
96.如何使用C#实现串口发送? C#例子
开发语言·c#
不爱写代码的玉子14 小时前
HALCON透视矩阵
人工智能·深度学习·线性代数·算法·计算机视觉·矩阵·c#
开开心心就好16 小时前
高效Excel合并拆分软件
开发语言·javascript·c#·ocr·排序算法·excel·最小二乘法
一名用户18 小时前
unity实现自定义粒子系统
c#·unity3d·游戏开发
钢铁男儿20 小时前
C# 类和继承(扩展方法)
java·servlet·c#
爱炸薯条的小朋友20 小时前
C#由于获取WPF窗口名称造成的异常报错问题
windows·c#·wpf