タイトル : 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 = "所属名称" |