Leggere in inglese

Condividi tramite


DataGridViewCellToolTipTextNeededEventHandler Delegato

Definizione

Rappresenta il metodo che gestirà l'evento CellToolTipTextNeeded di un oggetto DataGridView.

C#
public delegate void DataGridViewCellToolTipTextNeededEventHandler(object sender, DataGridViewCellToolTipTextNeededEventArgs e);
C#
public delegate void DataGridViewCellToolTipTextNeededEventHandler(object? sender, DataGridViewCellToolTipTextNeededEventArgs e);

Parametri

sender
Object

Origine dell'evento.

Esempio

Nell'esempio di codice seguente vengono usate le descrizioni comandi per visualizzare informazioni aggiuntive sul contenuto della cella nella ReportsTo colonna.

C#
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];
        }
    }
}

Commenti

L'evento CellToolTipTextNeeded si verifica solo quando la proprietà del controllo DataSource è impostata o la DataGridView relativa VirtualMode proprietà è true.

Quando si gestisce l'evento CellToolTipTextNeeded , il testo Descrizione comando specificato nel gestore viene visualizzato ogni volta che il puntatore del mouse si trova su una cella e il valore della proprietà di controllo ShowCellToolTips è true. L'evento CellToolTipTextNeeded è utile quando si desidera visualizzare le descrizioni comandi determinate dallo stato corrente o dal valore di una cella.

L'evento CellToolTipTextNeeded si verifica anche ogni volta che viene recuperato il valore della proprietà, a livello di DataGridViewCell.ToolTipText codice o quando il puntatore del mouse entra in una cella.

È possibile usare le DataGridViewCellEventArgs.ColumnIndex proprietà e RowIndex per determinare lo stato o il valore di una cella e usare queste informazioni per impostare la ToolTipText proprietà. Questa proprietà viene inizializzata con il valore della proprietà cell ToolTipText , che il valore dell'evento esegue l'override.

Gestire l'evento CellToolTipTextNeeded quando si usano grandi quantità di dati per evitare le penali per le prestazioni dell'impostazione del valore della cella ToolTipText per più celle. Per altre informazioni, vedere Procedure consigliate per ridimensionare il controllo DataGridView Windows Form.

Per altre informazioni su come gestire gli eventi, vedere la gestione e generazione di eventi.

Quando si crea un delegato DataGridViewCellToolTipTextNeededEventHandler, si identifica il metodo che gestirà l'evento. Per associare l'evento al gestore eventi in uso, aggiungere all'evento un'istanza del delegato. Il gestore eventi viene chiamato ogni volta che si verifica l'evento, a meno che non venga rimosso il delegato. Per altre informazioni sui delegati del gestore eventi, vedere Gestione e generazione di eventi.

Metodi di estensione

GetMethodInfo(Delegate)

Ottiene un oggetto che rappresenta il metodo rappresentato dal delegato specificato.

Si applica a

Prodotto Versioni
.NET Framework 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
Windows Desktop 3.0, 3.1, 5, 6, 7, 8, 9, 10

Vedi anche