注册 登录
编程论坛 C# 论坛

关于在datagridview控件中选取的几列值的选取与得值问题

不辍 发布于 2015-01-24 17:42, 558 次点击
//if (dataGridView1.SelectedRows[0].Selected)
                //{
                //    order = dataGridView1.SelectedRows[0].Cells[2].Value.ToString();
                //}
                //MessageBox.Show(order);
                string billno = "";
                for (int i = 0; i < dataGridView1.Rows.Count; i++)
                {
                    if (dataGridView1.Rows[i].Cells[0].Value != null)
                    {
                        if ((bool)dataGridView1.Rows[i].Cells[0].Value == true)
                        {
                            billno += dataGridView1.SelectedRows[0].Cells[2].Value.ToString() + ",";
                            //billno += dataGridView1.Rows[i].Cells[i].Value.ToString() + ",";
                            //MessageBox.Show(billno);
                        }
                    }
                }
                MessageBox.Show(billno);
                //}
                if (!string.IsNullOrEmpty(billno))
                {
                    billno = billno.Remove(billno.LastIndexOf(","), 1);
                }


当选取两行的时候messagebox输出的是选取的第二行的值,并且还是输出的两次,第二行是订单号比如是 02   那输出就是02,02
3 回复
#2
over12302015-01-26 09:40
billno += dataGridView1.SelectedRows[0].Cells[2].Value.ToString() + ",";
这不是把取值位置固定了吗?取出来的值当然是固定的。
这是想说明什么呢?
#3
Maick2015-01-26 10:42
billno += dataGridView1.SelectedRows[0].Cells[2].Value.ToString() + ",";
你都写死了啊..第一行,第三列的值
#4
Maick2015-01-26 10:49
要取多列的值..应该是行变..列不变
billno += dataGridView1.SelectedRows[i].Cells[2].Value.ToString() + ",";
1