DOBON.NET DOBON.NETプログラミング掲示板過去ログ

DataGridの処理について

環境/言語:[Win2000 VB.Net Framework(1.1SP1)]
分類:[.NET]

2005/10/20(Thu) 16:41:37 編集(投稿者)
2005/10/20(Thu) 16:41:31 編集(投稿者)

はじめまして。

WindowsFormでDbGridが5つあります。で、このDbGridを以下のようにまとめて使用し、
'=======================================================
Me.DbGrid = New System.Windows.Forms.DataGrid(4) {}
Me.DbGrid(0) = Me.DataGrid1
Me.DbGrid(1) = Me.DataGrid2
Me.DbGrid(2) = Me.DataGrid3
Me.DbGrid(3) = Me.DataGrid4
Me.DbGrid(4) = Me.DataGrid5
Dim i As Integer
For i = 0 To Me.DbGrid.Length - 1
'イベントハンドルの追加
  AddHandler Me.DbGrid(i).DoubleClick, _
  AddressOf Me.DataGrid_DoubleClick
Next i
'=======================================================
DataGrid_DoubleClickのイベント時にどのDbGridが呼び出され、かつそのCurrentCell
の位置を調べるのはどうしたらよいでしょうか?

よろしくお願いいたします。
2005/10/20(Thu) 17:09:11 編集(投稿者)

お世話になります。

■No13360に返信(りょうさんの記事)
> DataGrid_DoubleClickのイベント時にどのDbGridが呼び出され、かつそのCurrentCell
> の位置を調べるのはどうしたらよいでしょうか?

DoubleClickの引数sender As System.Objectを↓のような感じでキャストして
Dim currentDbGrid As DataGrid = DirectCast( sender, DataGrid )
Me.DbGridをForEach等でループしてインスタンス比較し、
意図するDataGridだったら、
Dim currentCell As DataGridCell = currentDbGrid.CurrentCell

…でしょうか。
  • 題名: Re[2]: DataGridの処理について
  • 著者: りょう
  • 日時: 2005/10/20 17:24:03
  • ID: 13365
  • この記事の返信元:
  • この記事への返信:
    • (なし)
  • ツリーを表示
なおこさん お返事ありがとうございます。

> DoubleClickの引数sender As System.Objectを↓のような感じでキャストして
> Dim currentDbGrid As DataGrid = DirectCast( sender, DataGrid )
> Me.DbGridをForEach等でループしてインスタンス比較し、
> 意図するDataGridだったら、
> Dim currentCell As DataGridCell = currentDbGrid.CurrentCell

上記の方法で無事出来ました。ありがとうございました。
解決済み!

DOBON.NET | プログラミング道 | プログラミング掲示板