DOBON.NETプログラミング掲示板過去ログ
DataGridでのコンボについて
題名: DataGridでのコンボについて
著者: ara
日時: 2004/09/04 16:14:49
ID: 5991
この記事の返信元:
(なし)
この記事への返信:
[6056]
Re[1]: DataGridでのコンボについて
深山
2004/09/08 12:44:43
ツリーを表示
環境/言語:[XP NET Frameworkのバージョン(1.0)]
分類:[.NET]
はじめまして。araです。
<VB.NET>
DataGrid上にコンボボックスを表示される方法について
このサイトの「DataGridでComboBoxを使う」を参考にさせていただいたのですが、
以下のような場合がうまく行きません。
どなたかご教授願えないでしょうか。よろしくお願いいたします。
・DataGridComboBoxColumnクラスを使用
・DBからデータを取得(4列)し、最後の列のみコンボボックスの対象としたい。
・表示上、コンボボックスは表示されるが、DBのデータを反映できていない。
(一部抜粋)
'コード
clmStyle = New DataGridTextBoxColumn()
clmStyle.MappingName = dsView.Tables(0).Columns(0).ColumnName
clmStyle.Width = 70
tblStyle.GridColumnStyles.Add(clmStyle)
'名称
clmStyle = New DataGridTextBoxColumn()
clmStyle.MappingName = dsView.Tables(0).Columns(1).ColumnName
clmStyle.Width = 200
tblStyle.GridColumnStyles.Add(clmStyle)
'DataGridComboBoxColumnの作成
Dim comboSorce As New DataTable("ComboBox")
comboSorce.Columns.Add("DisplayMember", GetType(String))
comboSorce.Columns.Add("ValueMember", GetType(Integer))
comboSorce.Rows.Add(New Object() {"0", 0})
comboSorce.Rows.Add(New Object() {"1", 1})
Dim cbc As New DataGridComboBoxColumn(comboSorce.DefaultView, "DisplayMember", "ValueMember")
cbc.MappingName = dsView.Tables(0).Columns(2).ColumnName
cbc.NullText = ""
cbc.HeaderText = "フラグ"
'列スタイルの追加
tblStyle.GridColumnStyles.Add(cbc)
題名: Re[1]: DataGridでのコンボについて
著者: 深山
日時: 2004/09/08 12:44:43
ID: 6056
この記事の返信元:
[5991]
DataGridでのコンボについて
ara
2004/09/04 16:14:49
この記事への返信:
(なし)
ツリーを表示
■No5991に返信(araさんの記事)
araさん、こんにちは。深山と申します。
> ・表示上、コンボボックスは表示されるが、DBのデータを反映できていない。
掲載されたコードをそのまま使って実験してみましたけど、こちらでは問題なく DataSet の
値が表示されました。
データの取得が思い通りにいっていないとか、 DataColumn の DataType が Int32 に
なっていないとか、他の箇所に問題があるような気がします。
先に提示された情報からはこれ以上なんとも。
> ・DBからデータを取得(4列)し、最後の列のみコンボボックスの対象としたい。
とあるのに
> cbc.MappingName = dsView.Tables(0).Columns(2).ColumnName
3 列目をコンボボックスの対象としている点は少し気になりましたけど。
# 転記ミスの類なのでしょうか?
DOBON.NET
|
プログラミング道
|
プログラミング掲示板
分類:[.NET]
はじめまして。araです。
<VB.NET>
DataGrid上にコンボボックスを表示される方法について
このサイトの「DataGridでComboBoxを使う」を参考にさせていただいたのですが、
以下のような場合がうまく行きません。
どなたかご教授願えないでしょうか。よろしくお願いいたします。
・DataGridComboBoxColumnクラスを使用
・DBからデータを取得(4列)し、最後の列のみコンボボックスの対象としたい。
・表示上、コンボボックスは表示されるが、DBのデータを反映できていない。
(一部抜粋)
'コード
clmStyle = New DataGridTextBoxColumn()
clmStyle.MappingName = dsView.Tables(0).Columns(0).ColumnName
clmStyle.Width = 70
tblStyle.GridColumnStyles.Add(clmStyle)
'名称
clmStyle = New DataGridTextBoxColumn()
clmStyle.MappingName = dsView.Tables(0).Columns(1).ColumnName
clmStyle.Width = 200
tblStyle.GridColumnStyles.Add(clmStyle)
'DataGridComboBoxColumnの作成
Dim comboSorce As New DataTable("ComboBox")
comboSorce.Columns.Add("DisplayMember", GetType(String))
comboSorce.Columns.Add("ValueMember", GetType(Integer))
comboSorce.Rows.Add(New Object() {"0", 0})
comboSorce.Rows.Add(New Object() {"1", 1})
Dim cbc As New DataGridComboBoxColumn(comboSorce.DefaultView, "DisplayMember", "ValueMember")
cbc.MappingName = dsView.Tables(0).Columns(2).ColumnName
cbc.NullText = ""
cbc.HeaderText = "フラグ"
'列スタイルの追加
tblStyle.GridColumnStyles.Add(cbc)