DataGridViewの列名をクリックするとエラーになります


みゆき  2009-04-07 16:18:15  No: 141815  IP: 192.*.*.*

下記のように、カラムを1つ増やして(ボタンを配置しました)
DataTableをDataGridViewに表示しました。

列名をクリックすると,『インデックスが範囲を超えています。負でない値で、コレクションのサイズより小さくなければありません。パラメータ名:index』とエラーメッセージが表示されます。なぜでしょうか、お解かりになる方かおられましたら教えていただけないでしょうか?

DataGridView1.Columns.Clear()
Dim column As New DataGridViewButtonColumn()
column.Name = "詳細閲覧"
column.UseColumnTextForButtonValue = True
column.Text = "レース詳細"
DataGridView1.Columns.Add(column)
DataGridView1.DataSource = dtbl_uma

編集 削除
VBレスキュー(花ちゃん)  2009-04-09 06:48:05  No: 141816  IP: 192.*.*.*

>列名をクリックすると,『インデックスが範囲を超えています。
>負でない値で、コレクションのサイズより小さくなければありません。
>パラメータ名:index』とエラーメッセージが表示されます。
>なぜでしょうか、お解かりになる方かおられましたら教えていただけないでしょうか?
肝心の、CellMouseClick イベント等のマウスのクリックイベント内の処理が
書いていないので定かではありませんが。
ヘッダーをクリックすると、e.RowIndex は、 -1 になり配列外になる為に
エラーとなっている可能性があります。
マウスのクリックイベント内で、RowIndex 等を取得していたら、IF 文等で
回避するようにして見て下さい。

編集 削除