This is a migrated thread and some comments may be shown as answers.

RadToolTip not showing on RadGrid field?

2 Answers 127 Views
ToolTip
This is a migrated thread and some comments may be shown as answers.
KN425000
Top achievements
Rank 1
KN425000 asked on 06 Jul 2011, 03:17 PM

I have a RadGrid where I'm truncating the display of cell data in order to preserve page real estate.  I want to show the full cell content in a RadToolTip.

On the server, in the GridItemDataBound server-side event handler, I'm transforming the values of each cell for display.  On the client, I'm truncating the display data using text-overflow:ellipsis.  On the server, I'm creating a RadToolTip with the full value, and shoving it into the Page object's Controls collection:

var item = (GridDataItem)e.Item;
var cell = item["Flavor"];
cell.Text = reallyLongFlavorNameValue;

var tooltip = new RadToolTip();
tooltip.Title = "Flavor";
tooltip.Text = reallyLongFlavorNameValue;
tooltip.TargetControlID = cell.ID;
tooltip.IsClientID = false;
tooltip.RelativeTo = ToolTipRelativeDisplay.Element;
this.Controls.Add(tooltip);

I'm assuming the rest of the values can be defaults.

However, when I show the page, the tooltip never shows. 

What am I missing?


Thanks

2 Answers, 1 is accepted

Sort by
0
Marin Bratanov
Telerik team
answered on 07 Jul 2011, 11:29 AM
Hi Mike,

  I am not sure how and why you add a control (the tooltip) to the controls collection, but I would advise against this. This is a databound event and it is a bit too late in the page lifecycle to add controls. Besides, after a few ajaxified pagings of the grid you would end up with several tooltips for the same cell, which may result in an unexpected behavior and would weigh down the markup.

What I would suggest is that you use the RadToolTipManager instead, add the cell to its target controls collection and use it to display the value. For more information on this approach please examine the following online demo: http://demos.telerik.com/aspnet-ajax/tooltip/examples/targetcontrolsandajax/defaultcs.aspx?product=grid. For the difference between the RadToolTip and the RadToolTipManager please examine this one: http://demos.telerik.com/aspnet-ajax/tooltip/examples/tooltipversustooltipmanager/defaultcs.aspx.

  For your convenience I created and attached a simple page that illustrates the approach. You can find a video with the expected behavior in the following link: http://screencast.com/t/4Zmyx0RWay. Please note how the cells have different content, yet their IDs remain the same.


All the best,
Marin
the Telerik team

Register for the Q2 2011 What's New Webinar Week. Mark your calendar for the week starting July 18th and book your seat for a walk through of all the exciting stuff we will ship with the new release!

0
KN425000
Top achievements
Rank 1
answered on 07 Jul 2011, 01:17 PM
I was adding the tooltip to the Page's Controls collection because it wasn't clear from the documentation where to add them, and I found some online posts by others saying to do so.

I actually solved this myself, yesterday.  The trick apears to be using GridTemplateColumns and adding the tooltips to the ItemTemplate.  It took some refactoring, but I was able to get it to work.

I'm not sure that I need to move to the RadToolTipManager.  If I need to do that, I will definitely try your suggestion.

Thanks
Tags
ToolTip
Asked by
KN425000
Top achievements
Rank 1
Answers by
Marin Bratanov
Telerik team
KN425000
Top achievements
Rank 1
Share this question
or