Hello lnu,
What you want to achieve out of the box is in fact a little bit more complicated than it seems. Let me first explain how the automatioc tooltipifying works. When the page loads and the RadToolTipManager is created with automatic tooltipifying turned on, it iterates through all teh controls with title/tooltip set, creates RadToolTips with the corresponding text and removes the standard tooltips (to avoid having 2 tooltips at the same time). What actually happens in your case is that when you reorder the columns on the client you should retooltipify them. However, if you call explicitly the function which tooltipifies, it will not work as expected because the standard tooltips have already been removed. What I can suggest in your case is to use serverside reordering and update both the grid and the tooltip manager with AJAX, for example as shown below:
<
asp:ScriptManager
ID
=
"ScriptManager1"
runat
=
"server"
/>
<
asp:UpdatePanel
ID
=
"pnl"
runat
=
"server"
>
<
ContentTemplate
>
<
telerik:RadGrid
AutoGenerateColumns
=
"false"
ID
=
"RadGrid1"
runat
=
"server"
OnItemDataBound
=
"RadGrid1_ItemDataBound"
GridLines
=
"None"
>
<
MasterTableView
CommandItemDisplay
=
"None"
TableLayout
=
"Auto"
>
<
Columns
>
<
telerik:GridBoundColumn
CurrentFilterFunction
=
"NoFilter"
DataField
=
"FirstColumn"
HeaderText
=
"FirstColumn"
HeaderTooltip
=
"FirstColumn"
>
</
telerik:GridBoundColumn
>
<
telerik:GridBoundColumn
CurrentFilterFunction
=
"NoFilter"
DataField
=
"SecondColumn"
HeaderText
=
"SecondColumn"
HeaderTooltip
=
"SecondColumn"
>
</
telerik:GridBoundColumn
>
<
telerik:GridBoundColumn
CurrentFilterFunction
=
"NoFilter"
DataField
=
"ThirdColumn"
HeaderText
=
"ThirdColumn"
HeaderTooltip
=
"ThirdColumn"
>
</
telerik:GridBoundColumn
>
<
telerik:GridTemplateColumn
HeaderText
=
"Template Column"
>
<
ItemTemplate
>
<
asp:HyperLink
ID
=
"target1"
runat
=
"server"
Text
=
"Show first tooltip"
></
asp:HyperLink
>
<
br
/>
<
br
/>
<
asp:HyperLink
ID
=
"target2"
runat
=
"server"
Text
=
"Show second tooltip"
></
asp:HyperLink
>
</
ItemTemplate
>
</
telerik:GridTemplateColumn
>
</
Columns
>
</
MasterTableView
>
<
ClientSettings
AllowColumnsReorder
=
"true"
>
</
ClientSettings
>
</
telerik:RadGrid
>
<
telerik:RadToolTipManager
ID
=
"mng1"
runat
=
"server"
AutoTooltipify
=
"true"
Width
=
"200"
>
</
telerik:RadToolTipManager
>
</
ContentTemplate
>
</
asp:UpdatePanel
>
This worked fine on my side. I understand that this solution has some disadvantages but having in mind how the controls work and also using all this functionality directly out of the box makes this setup complicated and this is teh best solution I can suggest.
All the best,
Svetlina
the Telerik team