アプリ版:「スタンプのみでお礼する」機能のリリースについて

VB2005です

Datagridview(g_meisai2)のDataSourceプロパティにDataSetオブジェクトを指定したのですが、
その1列目をコンボボックスに変更したいのです。
そのコンボボックスのDataSourceも別のDataSetオブジェクトを利用したいです。
以下のように記述したのですが
Dim col As System.Windows.Forms.DataGridViewComboBoxColumn = CType(g_meisai2.Columns(1), DataGridViewComboBoxColumn)
以下のようなエラーになります。
【"型 'System.Windows.Forms.DataGridViewTextBoxColumn' のオブジェクトを型 'System.Windows.Forms.DataGridViewComboBoxColumn' にキャストできません。"】

上記のような事はできないのでしょうか?

A 回答 (2件)

>でも、コンボボックスで選択されている値を、


>DataSetのそれぞれの行の値を利用したいのですが。

それならはじめから1列目をコンボボックス列として作成しておいて、

Dim col As System.Windows.Forms.DataGridViewComboBoxColumn = _
CType(g_meisai2.Columns(1), DataGridViewComboBoxColumn)
col.DataSource = ○○

見たいな感じでDataSourceをセットし、それから
DataGridViewの方のDataSourceをセットしてあげればよいと思います。
    • good
    • 0

1列目をコンボボックス列に変換するのではなく、新しく作ったコンボボックス列を1列目に加える、と言った方法はどうですか?

この回答への補足

ありがとうございます。
そういう手がありましたか。
思った通りのイメージになりました。
表示する件数が多いと、レコードを1件づつまわして
行を追加するよりも、断然早いです。

でも、コンボボックスで選択されている値を、
DataSetのそれぞれの行の値を利用したいのですが。
方法はありますか?

よろしくお願いいたします。

補足日時:2007/12/21 10:32
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!