1

誰か助けてくれませんか..?

これについて本当に助けが必要です。ここには 2 つのフォーム [form1 & form2] があります。各フォームにdatagridview(DGV)を作成しました。ここで、form2 のボタンを 1 つクリックして、form2 の datagridview から form1 の datagridview に値を転送/コピーする必要があります。

form2で私はこれを書きました..!

   private void button1_Click(object sender, EventArgs e)
    {
        try
        {
            if (dataGridView1.RowCount != 0)
            {

                foreach (DataGridViewRow row in dataGridView1.SelectedRows)
                {
                    object[] items = new object[row.Cells.Count];
                    for (int i = 0; i < row.Cells.Count; i++)
                        items[i] = row.Cells[i].Value;
                    Form1 F1 = new Form1();
                    F1.Activate();
                    F1.dataGridView1.Rows.Add(items);
                    F1.dataGridView1.DataSource = items; 
                    dataGridView1.Rows.Remove(row);
                }

              }
            else
            {
                MessageBox.Show("There is no data to export, please verify..!", "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
            }
        }
        catch { }

    }

そして、「... dataGridView1.Form1は保護レベルのためにアクセスできません」のようなエラーが発生します。form2 datagridview から form1 datagridview に値をインポートする他の方法または方法はありますか?

何か案は...?

前もって感謝します。

4

4 に答える 4

0

フォーム 2 でpublicBindingList<row_object>を宣言し、フォーム 1 から書き込みます。フォーム 1 の datagridview が bindingList にバインドされている場合、データは自動的に更新されます。datagridview を bindingList にバインドする方法については、こちらを参照してください。

于 2014-02-14T11:07:48.183 に答える
0

dataset/datatableバインドするform1 gridを public として宣言し、でアクセスするだけですform2。それを介して、datatable or dataset再び form2 にグリッドをバインドできます。

または、データセットまたはデータテーブルをフォーム 1 からフォーム 2 に (おそらくモジュラー関数を介して) 送信し、グリッドをバインドすることもできます。

これが最も簡単な方法です。

于 2013-10-28T05:05:07.183 に答える