将datagridview值以另一种形式传递给datagridview [英] Passing datagridview values to datagridview in another form

查看:111
本文介绍了将datagridview值以另一种形式传递给datagridview的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

你好编码员,

我的问题是我试图将一个表格上的datagridview的值复制到第二个表单上的另一个datagridview。我已经尝试了下面的代码,但它只是复制第一行。请指导我意识到我错误地编写了代码。

这是代码;

第一张表格上的代码

Hi coders,
My question is that am trying to copy the values of a datagridview on one form to another datagridview on the second form. I have tried the code below but it is only copying the first row. Please guide me on realizing where i wrote the code wrongly.
Here is the code;
Code on the first form

public Sales()
        {
            InitializeComponent();
            initializeDgvFields();
            loadSampleValueAtDgv1();
        }
        DataTable dt;
        private void initializeDgvFields()
        {
            dt = new DataTable();
            dt.Columns.Add("Item Name");
            dt.Columns.Add("Shop Qty");
            dt.Columns.Add("Price");
            dt.Columns.Add("Quantity");
            dt.Columns.Add("Total");
      

        }
        private void loadSampleValueAtDgv1()
        {
            for (int i = 0; i < dataGridView2.Rows.Count; ++i)
            {
               dt.Rows.Add();
            }
        }

        private void copyDgv1ValueToDgv2()
        {
for (int i = 0; i < dt.Rows.Count; i++)
            {
                f2.dt2.Rows.Add(dataGridView2.Rows[i].Cells[0].Value.ToString(), dataGridView2.Rows[i].Cells[1].Value.ToString(),
                    dataGridView2.Rows[i].Cells[2].Value.ToString(), dataGridView2.Rows[i].Cells[3].Value.ToString(), dataGridView2.Rows[i].Cells[4].Value.ToString());
            }

        }

        Close_Sale f2;
        private void button1_Click(object sender, EventArgs e)
        {
            f2 = new Close_Sale(this);
            copyDgv1ValueToDgv2();         
            f2.Show();
        }


第二张表格上的
代码


code on the second form

Sales f1;

      public Close_Sale(Sales f2)
      {
          InitializeComponent();
          f1 = f2;
          initializeDgvFields();

      }
      public DataTable dt2;
      private void initializeDgvFields()
      {
          dt2 = new DataTable();
          dt2.Columns.Add("Item Name");
          dt2.Columns.Add("Shop Qty");
          dt2.Columns.Add("Price");
          dt2.Columns.Add("Quantity");
          dt2.Columns.Add("Total");
          this.dataGridView1.DataSource = dt2;

      }



感谢您提供的任何帮助


Thanks for any help offered

推荐答案





使用 DataTable.Copy [ ^ ]功能:

Hi,

Use the DataTable.Copy[^] function:
private void copyDgv1ValueToDgv2()
{
     ft.dt2 = dt.Copy();
}



initializeDgvFields 功能:


And the initializeDgvFields function:

private void initializeDgvFields()
       {
           this.dataGridView1.DataSource = dt2;
       }



希望这有帮助。


Hope this helps.


这篇关于将datagridview值以另一种形式传递给datagridview的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆