- PR -

データグリッドの列ヘッダーのイベント

1
投稿者投稿内容
宇宙人
会議室デビュー日: 2004/03/23
投稿数: 4
投稿日時: 2004-08-06 17:30
こんにちは。

データグリッドの行ヘッダーがクリックされると発生する
イベントにOnRowHeaderClickがありますが、
列ヘッダーがクリックされると発生するイベントってどなたかご存知ですか?
いろいろ調べてみたのですが見つかりませんでした。
元々用意されていないのでしょうか?
宜しくお願いします。

えムナウ
大ベテラン
会議室デビュー日: 2004/06/10
投稿数: 187
お住まい・勤務地: 東京
投稿日時: 2004-08-11 15:05
OnRowHeaderClick は RowHeaderClick を発生させるメソッドです。
OnXXX (発生させるメソッド) と XXX(イベント)の関係を誤解しないように注意したほうがいいと思います。

>列ヘッダーがクリックされると発生するイベントってどなたかご存知ですか?
MouseDown イベントです。
DataGrid.HitTest メソッド (Int32, Int32) のヘルプ参照。
ヘルプにあったサンプルをコピーしておきます。
System.Windows.Forms.DataGrid.HitTestType.ColumnHeader ですね。
コード:

Private Sub DataGrid1_MouseDown(ByVal sender As Object, ByVal e As MouseEventArgs)
Dim myGrid As DataGrid = CType(sender, DataGrid)
Dim hti As System.Windows.Forms.DataGrid.HitTestInfo
hti = myGrid.HitTest(e.X, e.Y)
Select Case hti.Type
Case System.Windows.Forms.DataGrid.HitTestType.None
Console.WriteLine("You clicked the background.")
Case System.Windows.Forms.DataGrid.HitTestType.Cell
Console.WriteLine("You clicked cell at row " & hti.Row & ", col " & hti.Column)
Case System.Windows.Forms.DataGrid.HitTestType.ColumnHeader
Console.WriteLine("You clicked the column header for column " & hti.Column)
Case System.Windows.Forms.DataGrid.HitTestType.RowHeader
Console.WriteLine("You clicked the row header for row " & hti.Row)
Case System.Windows.Forms.DataGrid.HitTestType.ColumnResize
Console.WriteLine("You clicked the column resizer for column " & hti.Column)
Case System.Windows.Forms.DataGrid.HitTestType.RowResize
Console.WriteLine("You clicked the row resizer for row " & hti.Row)
Case System.Windows.Forms.DataGrid.HitTestType.Caption
Console.WriteLine("You clicked the caption")
Case System.Windows.Forms.DataGrid.HitTestType.ParentRows
Console.WriteLine("You clicked the parent row")
End Select
End Sub



_________________
〜〜〜〜〜〜〜〜
えムナウ
http://www.geocities.jp/mnow
mnow@yahoo.co.jp
〜〜〜〜〜〜〜〜

[ メッセージ編集済み 編集者: えムナウ 編集日時 2004-08-11 15:06 ]
1

スキルアップ/キャリアアップ(JOB@IT)