DataGridView.CellToolTipTextNeeded Zdarzenie

Definicja

Występuje, gdy jest wymagany tekst etykietki narzędzia komórki.Occurs when a cell's ToolTip text is needed.

public:
 event System::Windows::Forms::DataGridViewCellToolTipTextNeededEventHandler ^ CellToolTipTextNeeded;
public event System.Windows.Forms.DataGridViewCellToolTipTextNeededEventHandler CellToolTipTextNeeded;
member this.CellToolTipTextNeeded : System.Windows.Forms.DataGridViewCellToolTipTextNeededEventHandler 
Public Custom Event CellToolTipTextNeeded As DataGridViewCellToolTipTextNeededEventHandler 

Typ zdarzenia

DataGridViewCellToolTipTextNeededEventHandler

Przykłady

Poniższy przykład kodu ilustruje sposób używania CellToolTipTextNeeded procedury obsługi zdarzeń do wyświetlania informacji z ukrytych kolumn w kontrolce powiązanej z danymi DataGridView .The following code example demonstrates how to use a CellToolTipTextNeeded event handler to display information from hidden columns in a data-bound DataGridView control.

void dataGridView1_CellToolTipTextNeeded(object sender,
    DataGridViewCellToolTipTextNeededEventArgs e)
{
    string newLine = Environment.NewLine;
    if (e.RowIndex > -1)
    {
        DataGridViewRow dataGridViewRow1 = dataGridView1.Rows[e.RowIndex];

        // Add the employee's ID to the ToolTipText.
        e.ToolTipText = String.Format("EmployeeID {0}:{1}",
            dataGridViewRow1.Cells["EmployeeID"].Value, newLine);

        // Add the employee's name to the ToolTipText.
        e.ToolTipText += String.Format("{0} {1} {2}{3}",
            dataGridViewRow1.Cells["TitleOfCourtesy"].Value.ToString(),
            dataGridViewRow1.Cells["FirstName"].Value.ToString(),
            dataGridViewRow1.Cells["LastName"].Value.ToString(),
            newLine);

        // Add the employee's title to the ToolTipText.
        e.ToolTipText += String.Format("{0}{1}{2}",
            dataGridViewRow1.Cells["Title"].Value.ToString(),
            newLine, newLine);

        // Add the employee's contact information to the ToolTipText.
        e.ToolTipText += String.Format("{0}{1}{2}, ",
            dataGridViewRow1.Cells["Address"].Value.ToString(), newLine,
            dataGridViewRow1.Cells["City"].Value.ToString());
        if (!String.IsNullOrEmpty(
            dataGridViewRow1.Cells["Region"].Value.ToString()))
        {
            e.ToolTipText += String.Format("{0}, ",
                dataGridViewRow1.Cells["Region"].Value.ToString());
        }
        e.ToolTipText += String.Format("{0}, {1}{2}{3} EXT:{4}{5}{6}",
            dataGridViewRow1.Cells["Country"].Value.ToString(),
            dataGridViewRow1.Cells["PostalCode"].Value.ToString(),
            newLine, dataGridViewRow1.Cells["HomePhone"].Value.ToString(),
            dataGridViewRow1.Cells["Extension"].Value.ToString(),
            newLine, newLine);

        // Add employee information to the ToolTipText.
        DateTime HireDate =
            (DateTime)dataGridViewRow1.Cells["HireDate"].Value;
        e.ToolTipText +=
            String.Format("Employee since: {0}/{1}/{2}{3}Manager: {4}",
            HireDate.Month.ToString(), HireDate.Day.ToString(),
            HireDate.Year.ToString(), newLine,
            dataGridViewRow1.Cells["Manager"].Value.ToString());
    }
}
Public Sub dataGridView1_CellToolTipTextNeeded(ByVal sender As Object, _
    ByVal e As DataGridViewCellToolTipTextNeededEventArgs) _
    Handles dataGridView1.CellToolTipTextNeeded

    Dim newLine As String = Environment.NewLine
    If e.RowIndex > -1 Then
        Dim dataGridViewRow1 As DataGridViewRow = _
        dataGridView1.Rows(e.RowIndex)

        ' Add the employee's ID to the ToolTipText.
        e.ToolTipText = String.Format("EmployeeID {0}: {1}", _
            dataGridViewRow1.Cells("EmployeeID").Value.ToString(), _
            newLine)

        ' Add the employee's name to the ToolTipText.
        e.ToolTipText += String.Format("{0} {1} {2} {3}", _
            dataGridViewRow1.Cells("TitleOfCourtesy").Value.ToString(), _
            dataGridViewRow1.Cells("FirstName").Value.ToString(), _
            dataGridViewRow1.Cells("LastName").Value.ToString(), _
            newLine)

        ' Add the employee's title to the ToolTipText.
        e.ToolTipText += String.Format("{0}{1}{2}", _
            dataGridViewRow1.Cells("Title").Value.ToString(), _
            newLine, newLine)

        ' Add the employee's contact information to the ToolTipText.
        e.ToolTipText += String.Format("{0}{1}{2}, ", _
            dataGridViewRow1.Cells("Address").Value.ToString(), newLine, _
            dataGridViewRow1.Cells("City").Value.ToString())
        If Not String.IsNullOrEmpty( _
            dataGridViewRow1.Cells("Region").Value.ToString())

            e.ToolTipText += String.Format("{0}, ", _
               dataGridViewRow1.Cells("Region").Value.ToString())
        End If
        e.ToolTipText += String.Format("{0}, {1}{2}{3} EXT:{4}{5}{6}", _
            dataGridViewRow1.Cells("Country").Value.ToString(), _
            dataGridViewRow1.Cells("PostalCode").Value.ToString(), _
            newLine, _
            dataGridViewRow1.Cells("HomePhone").Value.ToString(), _
            dataGridViewRow1.Cells("Extension").Value.ToString(), _
            newLine, newLine)

        ' Add employee information to the ToolTipText.
        Dim HireDate As DateTime = _
            CType(dataGridViewRow1.Cells("HireDate").Value, DateTime)
        e.ToolTipText += _
            String.Format("Employee since: {0}/{1}/{2}{3}Manager: {4}", _
                HireDate.Month.ToString(), HireDate.Day.ToString(), _
                HireDate.Year.ToString(), newLine, _
                dataGridViewRow1.Cells("Manager").Value.ToString())
    End If
End Sub

Uwagi

CellToolTipTextNeededZdarzenie występuje tylko wtedy, gdy DataGridView Właściwość kontrolki DataSource jest ustawiona lub jej VirtualMode Właściwość jest true .The CellToolTipTextNeeded event occurs only when the DataGridView control DataSource property is set or its VirtualMode property is true.

Po obsłudze CellToolTipTextNeeded zdarzenia tekst etykietki narzędzia określony w programie obsługi jest pokazywany, jeśli ShowCellToolTips wartość właściwości jest, true a wskaźnik myszy znajduje się nad komórką lub użytkownik nawiguje do komórki przy użyciu klawiatury.When you handle the CellToolTipTextNeeded event, the ToolTip text you specify in the handler is shown if the ShowCellToolTips property value is true and the mouse pointer is over the cell or the user navigates to the cell using the keyboard. CellToolTipTextNeededZdarzenie jest przydatne, gdy chcesz wyświetlić etykietki narzędzi określone przez bieżący stan lub wartość komórki.The CellToolTipTextNeeded event is useful when you want to display ToolTips determined by the current state or value of a cell.

CellToolTipTextNeededZdarzenie występuje również zawsze, gdy wartość DataGridViewCell.ToolTipText właściwości jest pobierana, programowo lub gdy użytkownik nawiguje do komórki za pomocą myszy lub klawiatury.The CellToolTipTextNeeded event also occurs whenever the value of the DataGridViewCell.ToolTipText property is retrieved, either programmatically or when the user navigates to the cell with the mouse or keyboard.

Możesz użyć DataGridViewCellEventArgs.ColumnIndex właściwości i, RowIndex Aby określić stan lub wartość komórki, a następnie użyć tych informacji, aby zmienić lub zmodyfikować DataGridViewCellToolTipTextNeededEventArgs.ToolTipText Właściwość.You can use the DataGridViewCellEventArgs.ColumnIndex and RowIndex properties to determine the state or value of a cell, and use this information to change or modify the DataGridViewCellToolTipTextNeededEventArgs.ToolTipText property. Ta właściwość jest inicjowana przy użyciu wartości właściwości komórki ToolTipText , która zastępuje wartość zdarzenia.This property is initialized with the value of the cell ToolTipText property, which the event value overrides.

Obsłuż CellToolTipTextNeeded zdarzenie podczas pracy z dużymi ilościami danych, aby uniknąć spadku wydajności dla ustawiania wartości komórki ToolTipText dla wielu komórek.Handle the CellToolTipTextNeeded event when working with large amounts of data to avoid the performance penalties of setting the cell ToolTipText value for multiple cells. Aby uzyskać więcej informacji, zobacz najlepsze rozwiązania dotyczące skalowania Windows Forms formantu DataGridView.For more information, see Best Practices for Scaling the Windows Forms DataGridView Control.

Aby uzyskać więcej informacji o sposobie obsługi zdarzeń, zobacz Obsługa iwywoływanie zdarzeń.For more information about how to handle events, see Handling and Raising Events.

Dotyczy

Zobacz też