-1

完全結合を使用してdatagridviewに2つのテーブルの内容を入力しましたが、datagridviewの内容を1つのテーブルに保存したいと思います。ループを使用したくないし、datagridviewの単一のセルにアクセスしたくない。

今、誰もがこれに対する解決策を持っていますか?

datagridviewとそのアダプタのデータソースを使用することは解決策ではないので、私の問題を理解した後、正直に返信してください。

4

2 に答える 2

0

あなたが何を求めているのかわかりませんが、私は奉仕を試みます。完全結合を使用して2つのテーブルを組み合わせた結果セットを取得していて、その結果セットを3番目のテーブルに出力したいですか?あれは正しいですか?

まず、この3番目のテーブルのビューを作成することをお勧めします。これはおそらく最も効率的で動的なソリューションです。そのデータをユーザーに表示する場合は、データグリッドをビューにバインドします。2つの元のテーブルに変更を加えた場合は、3番目のテーブルを「手動で」更新する必要があります。ビューはこれを自動的に行います。

于 2012-05-29T14:48:04.147 に答える
0

完全結合を使用して3番目のテーブルにデータを入力し、3番目のテーブルをDataGridViewにバインドするのはどうですか。そのため、DataGridViewに変更を加えると、3番目のテーブルが自動的に更新されます。

これを試して。新しいwinformsプロジェクトを作成し、ボタンとdatgridviewを追加しました。パブリックデータテーブルを作成し、Form1コンストラクターで列と行を指定しました。ボタンをクリックすると、データテーブルに含まれる行数が表示されます。プログラムを実行して、MessageBoxが1と表示するボタンをクリックします。データグリッドビューに行を追加し、Messageboxが2と表示するボタンをクリックします。

//public/Global datatable
public DataTable myTable = new DataTable();
public Form1()
    {
        InitializeComponent();
        //create myTable Columns
        myTable.Columns.Add("Name");
        myTable.Columns.Add("Age");
        myTable.Columns.Add("Number");
        //add one row
        myTable.Rows.Add(new object[] {"myName","myAge","myNumber"});
        bind to the datagridview
        dataGridView1.DataSource = myTable;

    }

    private void button1_Click(object sender, EventArgs e)
    {
        //display the number or rows in the datatable
        MessageBox.Show(myTable.Rows.Count.ToString());
    }
}
于 2012-05-29T15:59:06.450 に答える