RadControls for ASP.NET AJAX There are many cases when you want you grid to show a tooltip when an item is hovered with the mouse. Tooltips are understood by screen readers and can be used as an accessibility feature.
In brief you need to handle either ItemDataBound or ItemCreatedEvent. There are two possible scenarios.In the first one you show the tooltips only when GridHeaderItem is hovered. In this case you should check in the event handler if e.Item is GridHeaderItem.
The second scenario is when the tooltips will be shown for any grid item. In this case you should check if e.Item is GridDataItem.
Consider the example below:
CopyC#
protected void RadGrid1_ItemCreated(object sender, Telerik.Web.UI.GridItemEventArgs e)
{
if (e.Item is GridHeaderItem)
{
GridHeaderItem headerItem = e.Item as GridHeaderItem;
foreach (GridColumn column in RadGrid1.MasterTableView.RenderColumns)
{
if (column is GridBoundColumn)
{
(headerItem[column.UniqueName].Controls[0] as LinkButton).ToolTip = column.UniqueName;
headerItem[column.UniqueName].ToolTip = column.UniqueName;
}
}
}
if (e.Item is GridDataItem)
{
GridDataItem gridItem = e.Item as GridDataItem;
foreach (GridColumn column in RadGrid1.MasterTableView.RenderColumns)
{
if (column is GridBoundColumn)
{
gridItem[column.UniqueName].ToolTip = "CustomerID: " +
gridItem.OwnerTableView.DataKeyValues[gridItem.ItemIndex]["CustomerID"].ToString();
}
}
}
}
CopyVB.NET
Protected Sub RadGrid1_ItemCreated(ByVal sender As Object, ByVal e As Telerik.Web.UI.GridItemEventArgs)
If (TypeOf e.Item Is GridHeaderItem) Then
Dim headerItem As GridHeaderItem = CType(e.Item, GridHeaderItem)
For Each column As GridColumn In RadGrid1.MasterTableView.RenderColumns
If (TypeOf column Is GridBoundColumn) Then
CType(headerItem(column.UniqueName).Controls(0), LinkButton).ToolTip = column.UniqueName
headerItem(column.UniqueName).ToolTip = column.UniqueName
End If
Next
End If
If (TypeOf e.Item Is GridDataItem) Then
Dim gridItem As GridDataItem = CType(e.Item, GridDataItem)
For Each column As GridColumn In RadGrid1.MasterTableView.RenderColumns
If (TypeOf column Is GridBoundColumn) Then
gridItem(column.UniqueName).ToolTip = ("CustomerID: " +
gridItem.OwnerTableView.DataKeyValues(gridItem.ItemIndex)("CustomerID").ToString)
End If
Next
End If
End Sub