C# と VB.NET の質問掲示板

ASP.NET、C++/CLI、Java 何でもどうぞ

C# と VB.NET の入門サイト

Re[2]: DataViewGridでコンボボックスの複数列表示について


(過去ログ 59 を表示中)

[トピック内 3 記事 (1 - 3 表示)]  << 0 >>

■33535 / inTopicNo.1)  DataViewGridでコンボボックスの複数列表示について
  
□投稿者/ tamaboyo (64回)-(2009/03/03(Tue) 14:55:45)

分類:[C#] 

tamaboyoです。

DataViewGridでデータを
・Comboboxのリストから選択
・数値編集←これはまだ何も考えていません。
で編集しようとしています。

とりあえず、Comboboxを
DataGridViewComboBoxColumn dgvColumn = new DataGridViewComboBoxColumn();
//ComboBoxのリストに表示する項目を指定する
dgvColumn.Items.Add("A");
dgvColumn.Items.Add("B");
dgvColumn.Items.Add("C");
//ComboBox列を表示する
DataGrid_EditPattern_Clkout.Columns.Insert(1, dgvColumn);
で1列表示できるようになったのですが、Col=3,5,7,9にも同じComboBoxを表示したいのです。

DataGrid_EditPattern_Clkout.Columns.Insert(3, dgvColumn);
とするとエラーになります。
別の列には別のComboBox列を準備して設定しないとダメなのでしょうか?

環境はVS2005です。
宜しくお願いします。
引用返信 編集キー/
■33542 / inTopicNo.2)  Re[1]: DataViewGridでコンボボックスの複数列表示について
□投稿者/ カドルドエグ (75回)-(2009/03/03(Tue) 16:41:59)
No33535 (tamaboyo さん) に返信
> で1列表示できるようになったのですが、Col=3,5,7,9にも同じComboBoxを表示したいのです。
> 別の列には別のComboBox列を準備して設定しないとダメなのでしょうか?

各列で違うインスタンスでないとダメではないかと…。

もし仮に、各列で同じインスタンスを使うことができたとしたら、
どこか1つの列の選択を変更したときに
他の列も同じように変更されることになるのではないでしょうか。

中身は同じでも、違う値を選択させたい = 違う動きをさせたいという場合は、
それぞれが独立した存在でいなくてはいけない→違うインスタンス(今回の場合はComboBoxですね)
でなくてはならないと思います。


引用返信 編集キー/
■33543 / inTopicNo.3)  Re[2]: DataViewGridでコンボボックスの複数列表示について
□投稿者/ tamaboyo (65回)-(2009/03/03(Tue) 17:31:00)
カドルドエグ さん、ありがとうございます。

>>で1列表示できるようになったのですが、Col=3,5,7,9にも同じComboBoxを表示したいのです。
>>別の列には別のComboBox列を準備して設定しないとダメなのでしょうか?
>
> 各列で違うインスタンスでないとダメではないかと…。
>
> もし仮に、各列で同じインスタンスを使うことができたとしたら、
> どこか1つの列の選択を変更したときに
> 他の列も同じように変更されることになるのではないでしょうか。

あぁ、その可能性はアリですね。


> 中身は同じでも、違う値を選択させたい = 違う動きをさせたいという場合は、
> それぞれが独立した存在でいなくてはいけない→違うインスタンス(今回の場合はComboBoxですね)
> でなくてはならないと思います。

なるほど、そういうことですね。納得です。
1列まとめて設定ができたので、別の列にもできるのかな?と思ってしまいました。
できない理由がわかってすっきりしました。
#ひょっとしたら設定方法が違うだけなのかな?と思って調べてたのですが、分からなかったのです。

ありがとうございました。
解決済み
引用返信 編集キー/


トピック内ページ移動 / << 0 >>

このトピックに書きこむ

過去ログには書き込み不可

管理者用

- Child Tree -