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


みゆき  2009-04-08 01:18:15  No: 141815

下記のように、カラムを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 15:48:05  No: 141816

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


※返信する前に利用規約をご確認ください。

※Google reCAPTCHA認証からCloudflare Turnstile認証へ変更しました。






  このエントリーをはてなブックマークに追加