DataGridViewCellToolTipTextNeededEventHandler デリゲートとは? わかりやすく解説

Weblio 辞書 > コンピュータ > .NET Framework クラス ライブラリ リファレンス > DataGridViewCellToolTipTextNeededEventHandler デリゲートの意味・解説 

DataGridViewCellToolTipTextNeededEventHandler デリゲート

メモ : このデリゲートは、.NET Framework version 2.0 で新しく追加されたものです。

DataGridView の CellToolTipTextNeeded イベントを処理するメソッドを表します。

名前空間: System.Windows.Forms
アセンブリ: System.Windows.Forms (system.windows.forms.dll 内)
構文構文

Public Delegate Sub DataGridViewCellToolTipTextNeededEventHandler
 ( _
    sender As Object, _
    e As DataGridViewCellToolTipTextNeededEventArgs _
)
Dim instance As New DataGridViewCellToolTipTextNeededEventHandler(AddressOf
 HandlerMethod)
public delegate void DataGridViewCellToolTipTextNeededEventHandler
 (
    Object sender,
    DataGridViewCellToolTipTextNeededEventArgs e
)
public delegate void DataGridViewCellToolTipTextNeededEventHandler
 (
    Object^ sender, 
    DataGridViewCellToolTipTextNeededEventArgs^ e
)
/** @delegate */
public delegate void DataGridViewCellToolTipTextNeededEventHandler
 (
    Object sender, 
    DataGridViewCellToolTipTextNeededEventArgs e
)
JScript では、デリゲートは使用できますが、新規に宣言することはできません。

パラメータ

sender

イベントのソース。

e

イベント データを格納している DataGridViewCellToolTipTextNeededEventArgs。

解説解説

CellToolTipTextNeeded イベントは、DataGridView コントロールの DataSource プロパティが設定されているか、VirtualMode プロパティが true の場合にだけ発生します。

CellToolTipTextNeeded イベントを処理すると、マウス ポインタがセルの上にあり、コントロールの ShowCellToolTips プロパティ値が true のときは、ハンドラで指定したツールヒント テキストが表示されます。CellToolTipTextNeeded イベントは、セルの現在の状態または値によって決定されたツールヒントを表示する場合に便利です。

CellToolTipTextNeeded イベントは、プログラムによって、またはマウス ポインタがセルに入ったときに、DataGridViewCell.ToolTipText プロパティの値が取得された場合にも必ず発生します。

DataGridViewCellEventArgs.ColumnIndex プロパティと RowIndex プロパティを使用すると、セルの状態または値を特定でき、さらにこの情報を使用して、ToolTipText プロパティを設定できます。このプロパティは、セルの ToolTipText プロパティの値によって初期化され、イベントの値によってオーバーライドされます。

大量のデータを処理するときは、CellToolTipTextNeeded イベントを処理して、複数のセルに対してセルの ToolTipText 値を設定することによるパフォーマンスの低下を防いでください。詳細については、「Windows フォーム DataGridView コントロールを拡張するための推奨される手順」を参照してください。

イベント処理の詳細については、「イベントの利用」を参照してください。

DataGridViewCellToolTipTextNeededEventHandler デリゲートを作成する場合は、イベントを処理するメソッドを識別してください。イベントをイベント ハンドラに関連付けるには、デリゲートのインスタンスをイベントに追加します。デリゲートを削除しない限り、そのイベントが発生すると常にイベント ハンドラが呼び出されます。イベント ハンドラ デリゲートの詳細については、「イベントとデリゲート」を参照してください。

使用例使用例

ツールヒントを使用して、ReportsTo 列のセルの内容に関する追加情報を表示するコード例を次に示します。

Private Function Populate(ByVal
 query As String, ByVal
 resetUnsharedCounter As Boolean) As DataTable

    If resetUnsharedCounter Then
        ResetCounter()
    End If

    ' Alter the data source as necessary
    Dim adapter As New SqlDataAdapter(query,
 _
        New SqlConnection("Integrated Security=SSPI;Persist
 Security Info=False;" & _
        "Initial Catalog=Northwind;Data Source=localhost"))

    Dim table As New DataTable()
    table.Locale = System.Globalization.CultureInfo.InvariantCulture
    adapter.Fill(table)
    Return table
End Function

Private count As New Label()
Private unsharedRowCounter As Integer

Private Sub ResetCounter()
    unsharedRowCounter = 0
    count.Text = unsharedRowCounter.ToString()
End Sub

Private Sub DataGridView1_CellToolTipTextNeeded(ByVal
 sender As Object, _
    ByVal e As DataGridViewCellToolTipTextNeededEventArgs)
 _
    Handles dataGridView1.CellToolTipTextNeeded

    If theCellImHoveringOver.ColumnIndex = dataGridView1.Columns("ReportsTo").Index
 AndAlso _
            theCellImHoveringOver.RowIndex > -1 Then

        Dim reportsTo As String
 = dataGridView1.Rows(theCellImHoveringOver.RowIndex). _
            Cells(theCellImHoveringOver.ColumnIndex).Value.ToString()
        If String.IsNullOrEmpty(reportsTo)
 Then
            e.ToolTipText = "The buck stops here!"
        Else
            Dim table As DataTable = Populate(
 _
                "select firstname, lastname from employees where employeeid
 = '" & _
                dataGridView1.Rows(theCellImHoveringOver.RowIndex). _
                Cells(theCellImHoveringOver.ColumnIndex).Value.ToString() & _
                "'", False)

            e.ToolTipText = "Reports to " & table.Rows(0).Item(0).ToString()
 & " " & table.Rows(0).Item(1).ToString()
        End If
    End If
End Sub
private DataTable Populate(string query, bool
 resetUnsharedCounter)
{
    if (resetUnsharedCounter)
    {
        ResetCounter();
    }

    // Alter the data source as necessary
    SqlDataAdapter adapter = new SqlDataAdapter(query,
        new SqlConnection("Integrated Security=SSPI;Persist
 Security Info=False;" +
        "Initial Catalog=Northwind;Data Source=localhost"));

    DataTable table = new DataTable();
    table.Locale = System.Globalization.CultureInfo.InvariantCulture;
    adapter.Fill(table);
    return table;
}

private Label count = new Label();
private int unsharedRowCounter;

private void ResetCounter()
{
    unsharedRowCounter = 0;
    count.Text = unsharedRowCounter.ToString();
}

private void dataGridView1_CellToolTipTextNeeded(object
 sender,
    DataGridViewCellToolTipTextNeededEventArgs e)
{

    if (theCellImHoveringOver.ColumnIndex == dataGridView1.Columns["ReportsTo"].Index
 &&
        theCellImHoveringOver.RowIndex > -1)
    {

        string reportsTo = dataGridView1.Rows[theCellImHoveringOver.RowIndex].
            Cells[theCellImHoveringOver.ColumnIndex].Value.ToString();

        if (String.IsNullOrEmpty(reportsTo))
        {
            e.ToolTipText = "The buck stops here!";
        }
        else
        {
            DataTable table = Populate(
                "select firstname, lastname from employees where employeeid
 = '" +
                dataGridView1.Rows[theCellImHoveringOver.RowIndex].
                Cells[theCellImHoveringOver.ColumnIndex].Value.ToString() +
                "'", false);

            e.ToolTipText = "Reports to " + table.Rows[0].ItemArray[0]
 + " " +
                table.Rows[0].ItemArray[1];
        }
    }
}
DataTable^ Populate( String^ query, bool resetUnsharedCounter
 )
{
    if ( resetUnsharedCounter )
    {
        ResetCounter();
    }


    // Alter the data source as necessary
    SqlDataAdapter^ adapter = gcnew SqlDataAdapter( query,
        gcnew SqlConnection( L"Integrated Security=SSPI;Persist Security Info=False;"
        L"Initial Catalog=Northwind;Data Source= localhost" ) );
    DataTable^ table = gcnew DataTable;
    adapter->Fill( table );
    return table;
}

Label^ count;
int unsharedRowCounter;
void ResetCounter()
{
    unsharedRowCounter = 0;
    count->Text = unsharedRowCounter.ToString();
}

void dataGridView1_CellToolTipTextNeeded( Object^ /*sender*/,
    DataGridViewCellToolTipTextNeededEventArgs^ e )
{
    if ( theCellImHoveringOver->ColumnIndex == dataGridView1->Columns[
 L"ReportsTo" ]->Index && theCellImHoveringOver->RowIndex
 > -1 )
    {
        String^ reportsTo = dataGridView1->Rows[ theCellImHoveringOver->RowIndex
 ]->Cells[ theCellImHoveringOver->ColumnIndex ]->Value->ToString();
        if ( reportsTo->Equals( L"" ) )
        {
            e->ToolTipText = L"The buck stops here!";
        }
        else
        {
            DataTable^ table = Populate( String::Format( L"select firstname,
 lastname from employees where employeeid = '{0}'",
                dataGridView1->Rows[ theCellImHoveringOver->RowIndex ]->Cells[
 theCellImHoveringOver->ColumnIndex ]->Value ), false );
            e->ToolTipText = String::Format( L"Reports to {0} {1}",
 table->Rows[ 0 ]->ItemArray[ 0 ], table->Rows[ 0 ]->ItemArray[ 1 ]
 );
        }
    }
}


プラットフォームプラットフォーム
バージョン情報バージョン情報
参照参照
関連項目
System.Windows.Forms 名前空間
DataGridView クラス
DataGridView.CellToolTipTextNeeded イベント
DataGridView.DataSource プロパティ
DataGridView.VirtualMode プロパティ
DataGridView.ShowCellToolTips プロパティ
DataGridViewCellToolTipTextNeededEventArgs クラス
DataGridViewCellToolTipTextNeededEventArgs.ToolTipText プロパティ
DataGridViewCell.ToolTipText プロパティ
その他の技術情報
Windows フォーム DataGridView コントロールを拡張するための推奨される手順


このページでは「.NET Framework クラス ライブラリ リファレンス」からDataGridViewCellToolTipTextNeededEventHandler デリゲートを検索した結果を表示しています。
Weblioに収録されているすべての辞書からDataGridViewCellToolTipTextNeededEventHandler デリゲートを検索する場合は、下記のリンクをクリックしてください。
 全ての辞書からDataGridViewCellToolTipTextNeededEventHandler デリゲート を検索

英和和英テキスト翻訳

英語⇒日本語日本語⇒英語

辞書ショートカット

すべての辞書の索引

DataGridViewCellToolTipTextNeededEventHandler デリゲートのお隣キーワード
検索ランキング

   

英語⇒日本語
日本語⇒英語
   



DataGridViewCellToolTipTextNeededEventHandler デリゲートのページの著作権

   
日本マイクロソフト株式会社日本マイクロソフト株式会社
© 2026 Microsoft.All rights reserved.

©2026 GRAS Group, Inc.RSS