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

相关推荐
军训猫猫头1 小时前
1.如何对多个控件进行高效的绑定 C#例子 WPF例子
开发语言·算法·c#·.net
葬歌倾城17 小时前
JSON的缩进格式方式和紧凑格式方式
c#·json
Eiceblue19 小时前
使用 C# 发送电子邮件(支持普通文本、HTML 和附件)
开发语言·c#·html·visual studio
小小小小王王王19 小时前
hello判断
开发语言·c#
金增辉21 小时前
基于C#的OPCServer应用开发,引用WtOPCSvr.dll
c#
future14121 天前
C#学习日记
开发语言·学习·c#
傻啦嘿哟1 天前
Python 办公实战:用 python-docx 自动生成 Word 文档
开发语言·c#
唐青枫1 天前
C#.NET log4net 详解
c#·.net
Nemo_XP1 天前
HttpHelper类处理两种HTTP POST请求
c#
lijingguang2 天前
在C#中根据URL下载文件并保存到本地,可以使用以下方法(推荐使用现代异步方式)
开发语言·c#