tagCANDY CGI VBレスキュー(花ちゃん) の Visual Basic 2010 用 掲示板(VB.NET 掲示板)
VBレスキュー(花ちゃん) の Visual Basic 2010 用 掲示板(VB.NET 掲示板)
[ツリー表示へ]  [ワード検索]  [Home]

タイトル DataGridViewの列にcomboboxを表示する方法
投稿日: 2008/09/18(Thu) 17:28
投稿者不二子
言語:VB2005
データベース:SQLServer 非接続型のデータアクセスです。
件名の件についてご教授お願いします。

DataGridViewに下記のデータをバインドしています。
SELECT ID, 所属コード, t1.名称 as 所属名称 FROM ATBL LEFT OUTER JOIN BTBL ON ATBL.所属コード = BTBL.コード ORDER BY ID

<ATBL>
ID     int
所属コード varchar(1)
<BTBL>
コード   varchar(1)
名称    varchar(10)

次に下記のコードでDataGridViewの"所属名称"をコンボボックスに設定しているのですが、データが0件だと正常にコンボボックスが
作られるのですが、データが1件でもあるとエラーになります。
エラー表示後もマウスでカーソルをコンボボックスの上に持っていくだけでエラーとなります。
エラーの内容は↓です。頭が???になってます。よろしくお願いします。

System.FormatException: DataGridViewComboBoxCell の値が有効ではありません
この既定のダイアログを置き換えるには、DataError イベントをハンドルしてください。

******************************
'DataGridViewにComboBoxを設定(DataSourceプロパティを使用した例)
******************************
Dim DataSource As New DataTable("DataSource")
DataSource.Columns.Add("Value", GetType(String))
DataSource.Columns.Add("code", GetType(Integer))
DataSource.Rows.Add("", 0)
DataSource.Rows.Add("小学校", 1)
DataSource.Rows.Add("中学校", 2)
DataSource.Rows.Add("高校", 3)
Dim column As New DataGridViewComboBoxColumn()
column.DataPropertyName = "所属名称"
column.DataSource = DataSource
column.ValueMember = "code"
column.DisplayMember = "Value"
dgrview.Columns.Insert(dgrview.Columns("所属名称").Index, column)
dgrview.Columns.Remove("所属名称")
column.Name = "所属名称"

- 関連一覧ツリー をクリックするとツリー全体を一括表示します)

古いスレッドにレスはつけられません。