DataGridView.CellToolTipTextNeeded Händelse
Definition
Viktigt
En del information gäller för förhandsversionen av en produkt och kan komma att ändras avsevärt innan produkten blir allmänt tillgänglig. Microsoft lämnar inga garantier, uttryckliga eller underförstådda, avseende informationen som visas här.
Inträffar när en cells knappbeskrivningstext behövs.
public:
event System::Windows::Forms::DataGridViewCellToolTipTextNeededEventHandler ^ CellToolTipTextNeeded;
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
Händelsetyp
Exempel
Följande kodexempel visar hur du använder en CellToolTipTextNeeded händelsehanterare för att visa information från dolda kolumner i en databunden DataGridView kontroll.
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
Kommentarer
Händelsen CellToolTipTextNeeded inträffar endast när kontrollegenskapen DataGridViewDataSource har angetts eller dess VirtualMode egenskap är true.
När du hanterar CellToolTipTextNeeded händelsen visas knappbeskrivningstexten som du anger i hanteraren om ShowCellToolTips egenskapsvärdet är true och muspekaren är över cellen eller om användaren navigerar till cellen med tangentbordet. Händelsen CellToolTipTextNeeded är användbar när du vill visa Knappbeskrivningar som bestäms av aktuellt tillstånd eller värde för en cell.
Händelsen CellToolTipTextNeeded inträffar också när värdet för DataGridViewCell.ToolTipText egenskapen hämtas, antingen programmatiskt eller när användaren navigerar till cellen med musen eller tangentbordet.
Du kan använda DataGridViewCellEventArgs.ColumnIndex egenskaperna och RowIndex för att fastställa tillståndet eller värdet för en cell och använda den här informationen för att ändra eller ändra DataGridViewCellToolTipTextNeededEventArgs.ToolTipText egenskapen. Den här egenskapen initieras med värdet för cellegenskapen ToolTipText , som händelsevärdet åsidosätter.
Hantera händelsen CellToolTipTextNeeded när du arbetar med stora mängder data för att undvika prestandapåföljderna för att ange cellvärdet ToolTipText för flera celler. Mer information finns i Best Practices for Scaling the Windows Forms DataGridView Control.
Mer information om hur du hanterar händelser finns i Hantera och höja händelser.