c#怎么在dataGridView里面添加一列?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了c#怎么在dataGridView里面添加一列?相关的知识,希望对你有一定的参考价值。

左边这写数据是从数据库的表里查出来的,右变的数据前三列是数据库里的直接调出来的,但是数量那列我想后加,并且双击一次左面的dgv,右面对应的数据的数量就+1,怎么实现,求帮助

c#添加一列或一行具体代码和注释如下:
//
var d= new DataTable();

//想加几个列就加几个列。
d.Columns.Add("a");
d.Columns.Add("b");
d.Columns.Add("c");

//相加几个行就加几个行
//每行可以满员,也可以个别字段没有值(比如这里的c)
var r = d.NewRow();
r["a"] = 1;
r["b"] = 2;
d.Rows.Add(r);

//数据的类型也可以随意整,不限制
var r2 = d.NewRow();
r2["a"] = "wakaka";
r2["c"] = 2;
d.Rows.Add(r2);

//绑定上去
dataGridView1.DataSource = d;
参考技术A             DataTable dt = new DataTable();
            dt.Columns.Add("编号",typeof(Int32));
            dt.Columns.Add("名称", typeof(string));
            dt.Columns.Add("数量", typeof(string));

            DataRow dr = dt.NewRow();
            dr["编号"] = dataGridView1.CurrentCell.OwningRow.Cells["编号"].ToString();
            dr["名称"] = dataGridView1.CurrentCell.OwningRow.Cells["名称"].ToString();
            dt.Rows.Add(dr);

            dataGridView2.DataSource = dt;

你要的是把左边的部分信息带到右边的表格里吧!?

看懂代码,自己再改下!

追问

我能加一下您的q.q吗,然后细问问

追答

29077384你可以加我的qq,有问题可以留言!上班时间可以帮你远程看下!呵呵!

本回答被提问者采纳
参考技术B dgv.columns.add("","");两参数分别为列名和列标题名追问

那您知道怎么让数量增加吗,双击一次的时候数量是一,双击两次数量就是2...

追答

你在左边的DGV双击事件里给右边的单元格赋值就可以了啊!双击次数可以用变量存储的啊!

追问

我能加一下您的q.q吗

C#在windowsform的datagridview表格里面添加一列删除按钮

点击这个删除按钮就可以删除datagridview里面的与按钮同一行的信息,这个信息也是真的从数据库里面删除了,而不是只在dataset里面删除。
如果有会的大侠,请把您的代码尽可能详细的告诉我。
最好是一步步的道来,谢谢啦。辛苦各位大侠了。

表结构
userid username
1 aaa
2 bbb
详细看步聚
1 拖个datagridview到窗体上。
2 把这两列绑到datagridview上
3 给这个datagridview添加个DataGridViewButtonColumn按钮列 列名叫ColumnDelete
4 添加datagridview的CellContentClick(单元格单击事件)
private void dataGridView1_CellContentClick(object sender, DataGridViewCellEventArgs e)
if (e.ColumnIndex == this.dataGridView1.Columns["ColumnDelete"].Index) //判断列索引是不是删除按钮
int rows = dataGridView1.CurrentRow.Index; //得到当前行的索引
string id = dataGridView1.Rows[rows].Cells[0].Value.ToString(); //得到表的主键ID,就是上表中的userid
if (id != null && id != "" && MessageBox.Show("您确定要删除吗?", "重要提示!", MessageBoxButtons.OKCancel, MessageBoxIcon.Exclamation) == System.Windows.Forms.DialogResult.OK)
new BLL.sys_user().Delete(Convert.ToInt32(id)); //执行删除方法
bindUserList(null,null); //重新绑定数据(刷新列表)

追问

貌似快要成功了,只是BLL和bindUserList是什么东西,会报错的!
辛苦你了!!

追答

1 new BLL.sys_user().Delete(Convert.ToInt32(id)); //执行删除方法
2 bindUserList(null,null); //重新绑定数据(刷新列表)

1 是执行删除此条数据的动作。是从数据库中删除此条记录。你可以替换成你删除此条用户记录的方法
2 binduserlist这是重新加载绑定用户列表的数据的方法。 是重新把最新的数据绑定到datagridview上。显示出来你也要替换成你自己的方法。

或者你可以先把这两句注释了。再运行看一下效果。

参考技术A 你应该使用数据集的更新
首先拖一个按钮,注册一个点击事件
然后在事件方法里面将选中行删除掉:如DataRow drChoose = ...;drChoose.Delete();
然后更新:比如:DataTable dt = ..; dt.Update();
当然你需要参考DataAdapter更新数据集的相关资料,其实挺简单的
百度吧!

以上是关于c#怎么在dataGridView里面添加一列?的主要内容,如果未能解决你的问题,请参考以下文章

C#在windowsform的datagridview表格里面添加一列删除按钮

如何在一个DataGridView中的一列添加DateTimePicker控件 C#

C#中 如何给Datagridview添加一列checkbox

如何做:C#写的C/S程序,DataGridView中要添加一列下拉选框,下拉选框的内容由DataTable的一列绑定.

datagridview中如何添加一列自动编号的列

C#实例:datagridview单元格合并