当前位置:编程学习 > C#/ASP.NET >>

Datagridview 添加数据真的难吗?高手帮忙看下100分回报!!!

1、Datagridview1

已读取Datagridview1数据:
Strsql=” select '1062','印刷前裱咭','0'  
union   select '1065','印刷前过油','0'  
union   select '3045','外发/外购','2'  
union   select '3050','磨光','2'  
union   select '3080','闪粉','2'  
union   select '3090','压纹','2'  
union   select '3110','植绒','2'  
union   select '3120','击凹凸','2'  
union   select '3230','快递信封粘胶成型','2'  

 
加到已有部分数据的Datagridview2后面加上面的数据

 Datagridview2原有的数据是:
select '3240','机器粘边','2'  
union   select '3250','机器粘盒','2'  
union   select '3260','机器折页','2'  
union   select '3270','骑钉','2'  
union   select '3350','内盒成型','2'  
union   select '3360','外盒成型','2'  
union   select '3370','手工扪内盒','2'”

请大侠帮帮啊,我是新手,万分感谢!

Datagridview 添加数据 --------------------编程问答-------------------- 你可以把两条sql 语句连接起来查询,然后再重新给Datagridview2绑定数据

如果你用List<T>,那么它有一个.Add属性,你可以通过foreach循环一条一条添加,再绑定


--------------------编程问答-------------------- 简单点可以这样

  dt1 = this.dataGridView1.DataSource as DataTable;
            dt2 = this.dataGridView2.DataSource as DataTable;

            dt2.Merge(dt1);

也可以这样

 dt1 = this.dataGridView1.DataSource as DataTable;
            dt2 = this.dataGridView2.DataSource as DataTable;
            dt3 = dt1.AsEnumerable().Union(dt2.AsEnumerable()).ToArray().CopyToDataTable();
            this.dataGridView2.DataSource = dt3;
            this.button1.Enabled = false;

完整代码例子

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;

namespace WindowsFormsApplication1
{
    public partial class Form1 : Form
    {
        private DataTable dt1 = new DataTable();
        private DataTable dt2 = new DataTable();
        private DataTable dt3 = new DataTable();
        public Form1()
        {
            InitializeComponent();
        }

        private void Form1_Load(object sender, EventArgs e)
        {

            dt1.Columns.Add(new DataColumn("TYPE_ID"));
            dt1.Columns.Add(new DataColumn("QUES_TYPE"));

            dt1.Rows.Add(new Object[] { "00001", "计算机类" });
            dt1.Rows.Add(new Object[] { "00002", "电子类" });
            dt1.Rows.Add(new Object[] { "00003", "农学类" });
            this.dataGridView1.DataSource = dt1;

            dt2.Columns.Add(new DataColumn("TYPE_ID"));
            dt2.Columns.Add(new DataColumn("QUES_TYPE"));
            dt2.Rows.Add(new Object[] { "00004", "言情类" });
            dt2.Rows.Add(new Object[] { "00005", "喜剧类" });
            dt2.Rows.Add(new Object[] { "00006", "恐怖类" });
            this.dataGridView2.DataSource = dt2;
        }

        private void button1_Click(object sender, EventArgs e)
        {
            dt1 = this.dataGridView1.DataSource as DataTable;
            dt2 = this.dataGridView2.DataSource as DataTable;

            //dt2.Merge(dt1);
            dt3 = dt1.AsEnumerable().Union(dt2.AsEnumerable()).ToArray().CopyToDataTable();

            this.dataGridView2.DataSource = dt3;

            this.button1.Enabled = false;

        }
    }
}


窗体上两个dataGridView,一个button --------------------编程问答-------------------- DataTable.Merge 方法 (DataTable) --------------------编程问答-------------------- 是vb.net winform
上述问题如何处理,谢谢! --------------------编程问答--------------------


        If dt.Rows.Count = 0 Then
            MessageBox.Show("无查询记录", "提示")
        Else

            For i As Integer = 0 To dt.Rows.Count - 1
                Me.DataGridView1.Rows.Add()
                For j As Integer = 0 To dt.Columns.Count - 1
                    Me.DataGridView1.Rows(i).Cells(j).Value = dt.Rows(i).Item(j).ToString
                Next
            Next

        End If
--------------------编程问答-------------------- 除 --------------------编程问答-------------------- 你的 Datagridview2 已经绑定了一个table,那样是不能添加行的

你应该在table那里改,在table那里添加new row,row要符合table的格式,然后往里面写数据

二楼的代码可以用C#转VB 学着更改  
http://www.developerfusion.com/tools/convert/csharp-to-vb/ --------------------编程问答-------------------- --------------------编程问答-------------------- Chinajiyong 已经给你方案了,不对么?把你两个数据表合成一个表在绑定数据源啊!第二种不可以直接绑,那你就循环赋值呗!
补充:.NET技术 ,  VB.NET
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,