|
分類:[C#]
2011/11/02(Wed) 16:04:47 編集(投稿者) 2011/11/02(Wed) 16:04:39 編集(投稿者)
こんにちは。
TabControl上のdataGridView ComboBoxColumnで困っております。 ご指導くださいますようお願いします。
フォームに「TabControl」を追加し、各タブページに1つ「dataGridView」を追加しています。 「dataGridView」の表示は、「DataTable」をバインドすることで実施しております。 ただし、下記の項目は非バインドとしています。
「dataGridView」の列に「DataGridViewComboBoxColumn」を設定し、 1行毎にばらばらの選択内容を設定したいと考えています。
質問 下記処理を実行したところ、タブページ1は表示されますが、 タブページ2に切り替えるとエラーが表示されます。 また、タブページ2の「DataGridViewComboBoxColumn」に選択肢が追加されていません。
1・2項目「DataGridViewTextBoxColumn」 3項目目「DataGridViewComboBoxColumn」
private void Form1_Load(object sender, EventArgs e) { test(dataGridView1, dataTable1, "1"); test(dataGridView2, dataTable2, "2"); }
private void test(DataGridView dgv, DataTable dataTable, string sPage) { for (int iLp = 0; iLp < 3; iLp++) { // dgvアイテムを追加する DataRow dRow = dataTable.NewRow(); dRow[0] = sPage + iLp.ToString() + "1"; dRow[1] = sPage + iLp.ToString() + "2"; dRow[2] = sPage + "う" + iLp.ToString(); dataTable.Rows.Add(dRow);
((DataGridViewComboBoxCell)dgv[2, iLp]).Items.Add(sPage + "あ" + iLp.ToString()); ((DataGridViewComboBoxCell)dgv[2, iLp]).Items.Add(sPage + "い" + iLp.ToString()); ((DataGridViewComboBoxCell)dgv[2, iLp]).Items.Add(sPage + "う" + iLp.ToString()); ((DataGridViewComboBoxCell)dgv[2, iLp]).Items.Add(sPage + "え" + iLp.ToString()); ((DataGridViewComboBoxCell)dgv[2, iLp]).Items.Add(sPage + "お" + iLp.ToString()); } }
どのように対応すれば良いかご指導ください。
|