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

ToolTip Treelist Items .-Problem-.

3 Answers 62 Views
ToolTip
This is a migrated thread and some comments may be shown as answers.
Franklin
Top achievements
Rank 1
Franklin asked on 12 Jul 2012, 07:42 PM
I´ve got a treelist and added a template column as below

<telerik:TreeListTemplateColumn HeaderStyle-Width="70px" 
                                HeaderText="Usuer" ItemStyle-HorizontalAlign="Center" ReadOnly="True" 
                                SortExpression="User" UniqueName="User">
                                <ItemTemplate>
                                    <asp:ImageButton ID="ImageButton1" runat="server" 
                                        CommandArgument='<%# Eval("IdUser") %>' Height="20" 
                                        ImageUrl="~/Styles/images/user.png" 
                                        OnClick="ImageButton1_Click" Width="20" />
                                </ItemTemplate>
                                <HeaderStyle Width="70px" />
                                <ItemStyle HorizontalAlign="Center" />
                            </telerik:TreeListTemplateColumn>

In the ItemDataBound event (treelist) I add the item to RadToolTipManager

ImageButton item = (ImageButton)((Telerik.Web.UI.TreeListDataItem)e.Item).FindControl("ImageButton1");
//Add the button (target) id to the tooltip manager
this.RadToolTipManager1.TargetControls.Add(item.ClientID, item.CommandArgument.ToString(), true);

MY PROBLEM IS WHEN I EXPAND A ROW TO SHOW THE CHILD ITEMS, THE TOOLTIPS DO NOT UPDATE, AND SHOWS THE INFORMATION OF THE LAST ITEM WHICH WAS IN THAT ROW.

Thanks!.

3 Answers, 1 is accepted

Sort by
0
Andrey
Telerik team
answered on 16 Jul 2012, 07:43 AM
Hello,

Could you post your complete page source along with the code-behind file content? Thus all who want to help you will have a chance to examine your code and give you more detailed solutions.

All the best,
Andrey
the Telerik team
If you want to get updates on new releases, tips and tricks and sneak peeks at our product labs directly from the developers working on the RadControls for ASP.NET AJAX, subscribe to their blog feed now.
0
Franklin
Top achievements
Rank 1
answered on 16 Jul 2012, 08:09 PM
Hello Andrey,
Here is my code.

I would appreciate any help.
Thanks.


File .ASPX:

<table width="100%"><br>    <tr><br>        <td><br>            <telerik:RadToolTipManager runat="server" AnimationDuration="300" ShowDelay="200"<br>             HideDelay="1" ID="RadToolTipManager1" Width="250px"<br>            RelativeTo="Element" Animation="Slide" Position="BottomCenter" OnAjaxUpdate="OnAjaxUpdate"<br>             RenderInPageRoot="True" /><br><br><br>            <telerik:RadAjaxPanel ID="RadAjaxPanel1" LoadingPanelID="RadAjaxLoadingPanel1" runat="server"><br><br><br>            <telerik:RadTreeList ID="tasksListRadTreeList" runat="server" Width="100%" <br>                DataKeyNames="IdTask" <br>                ParentDataKeyNames="IdFather" AutoGenerateColumns="False" <br>                EditMode="InPlace" <br>                    NoRecordsText="No se han agregado tareas hasta el momento." <br>                    onneeddatasource="tasksListRadTreeList_NeedDataSource" AllowSorting="True" <br>                    AllowStableSort="True" ClientDataKeyNames="IdTask" <br>                    oninsertcommand="tasksListRadTreeList_InsertCommand" <br>                    onitemdatabound="tasksListRadTreeList_ItemDataBound" <br>                    onitemcreated="tasksListRadTreeList_ItemCreated" <br>                    onupdatecommand="tasksListRadTreeList_UpdateCommand" <br>                    ondeletecommand="tasksListRadTreeList_DeleteCommand"><br>                        <Columns><br>                            <telerik:TreeListSelectColumn HeaderStyle-Width="38px"><br>                                <HeaderStyle Width="38px" /><br>                            </telerik:TreeListSelectColumn><br><br><br>                            <telerik:TreeListTemplateColumn DataField="NameTask" HeaderStyle-Width="30%"<br>                                HeaderText="Título" SortExpression="NameTask" UniqueName="NameTask"><br>                                <ItemTemplate><br>                                    <asp:Label ID="nameTasklabel" runat="server" Text='<%# Eval("NameTask") %>' <br>                                        ToolTip='<%# Eval("NameTask") %>'></asp:Label><br>                                </ItemTemplate><br>                                <EditItemTemplate><br>                                    <telerik:RadTextBox ID="nameTaskRadTextBox" runat="server" Width="98%"  Text='<%# Eval("NameTask") %>'><br>                                    </telerik:RadTextBox><br>                                </EditItemTemplate><br>                                <HeaderStyle Width="80px" /><br>                            </telerik:TreeListTemplateColumn><br><br><br>                            <telerik:TreeListTemplateColumn DataField="StartDate" HeaderStyle-Width="80px" <br>                                HeaderText="Fecha Inicio" SortExpression="StartDate" UniqueName="StartDate"><br>                                <ItemTemplate><br>                                    <asp:Label ID="startDatelabel" runat="server" Text='<%# Eval("StartDate") %>' <br>                                        ToolTip='<%# Eval("EndDate") %>'></asp:Label><br>                                </ItemTemplate><br>                                <EditItemTemplate><br>                                    <telerik:RadDatePicker ID="startDateRadDatePicker" Runat="server" <br>                                        Calendar-CultureInfo="es-CO" Calendar-DateRangeSeparator=" /" <br>                                        SelectedDate="01/01/2012" Width="80"><br>                                    </telerik:RadDatePicker><br>                                </EditItemTemplate><br>                                <HeaderStyle Width="80px" /><br>                            </telerik:TreeListTemplateColumn><br>                            <telerik:TreeListTemplateColumn DataField="EndDate" HeaderStyle-Width="80px" <br>                                HeaderText="Fecha Fin" SortExpression="EndDate" UniqueName="EndDate"><br>                                <ItemTemplate><br>                                    <asp:Label ID="endDatelabel" runat="server" Text='<%# Eval("EndDate") %>' <br>                                        ToolTip='<%# Eval("EndDate") %>'></asp:Label><br>                                </ItemTemplate><br>                                <EditItemTemplate><br>                                    <telerik:RadDatePicker ID="endDateRadDatePicker" Runat="server" <br>                                        SelectedDate="01/01/2012" Width="80"><br>                                    </telerik:RadDatePicker><br>                                </EditItemTemplate><br>                                <HeaderStyle Width="80px" /><br>                            </telerik:TreeListTemplateColumn><br>                            <telerik:TreeListTemplateColumn DataField="Percentage" HeaderStyle-Width="50px" <br>                                HeaderText="% " SortExpression="Percentage" UniqueName="Percentage"><br>                                <ItemTemplate><br>                                    <asp:Label ID="percentagelabel" runat="server" Text='<%# Eval("Percentage") %>' <br>                                        ToolTip='<%# Eval("Percentage") %>'></asp:Label><br>                                </ItemTemplate><br>                                <EditItemTemplate><br>                                    <telerik:RadNumericTextBox ID="percentRadNumericTextBox" runat="server" <br>                                        MaxLength="3" MaxValue="100" MinValue="0" ShowButton="False" <br>                                        ShowSpinButtons="True" Text='<%# Eval("Percentage") %>' Width="50"><br>                                    </telerik:RadNumericTextBox><br>                                </EditItemTemplate><br>                                <HeaderStyle Width="50px" /><br>                            </telerik:TreeListTemplateColumn><br>                            <telerik:TreeListTemplateColumn HeaderStyle-Width="70px" <br>                                HeaderText="Responsables" ItemStyle-HorizontalAlign="Center" ReadOnly="True" <br>                                SortExpression="Responsibles" UniqueName="Responsibles"><br>                                <ItemTemplate><br>                                    <asp:ImageButton ID="responsiblesImageButton" runat="server" <br>                                        CommandArgument='<%# Eval("IdTask") %>' Height="20" <br>                                        ImageUrl="~/Styles/images/user-blue-add.png" <br>                                        OnClick="responsiblesImageButton_Click" Width="20" /><br>                                </ItemTemplate><br>                                <HeaderStyle Width="70px" /><br>                                <ItemStyle HorizontalAlign="Center" /><br>                            </telerik:TreeListTemplateColumn><br>                            <telerik:TreeListTemplateColumn HeaderStyle-Width="50px" HeaderText="Notas" <br>                                ReadOnly="True" SortExpression="Notes" UniqueName="Notes"><br>                                <ItemTemplate><br>                                    <asp:ImageButton ID="notesImageButton" runat="server" <br>                                        CommandArgument='<%# Eval("IdTask") %>' CommandName='<%# Eval("NameTask") %>' Height="20" <br>                                        ImageUrl="~/Styles/images/sticky-notes.png" OnClick="notesImageButton_Click" <br>                                        ToolTip="Agregar Nota a Tarea" Width="20" /><br>                                </ItemTemplate><br>                                <HeaderStyle Width="50px" /><br>                            </telerik:TreeListTemplateColumn><br>                           <br>                            <telerik:TreeListEditCommandColumn AddRecordText="Agregar Subtarea" <br>                                ButtonType="ImageButton" CancelText="Cancelar" EditText="Editar Tarea" <br>                                HeaderStyle-Width="70px" ShowAddButton="True" UniqueName="EditCommandColumn" InsertText="Agregar una Tarea" UpdateText="Actualizar"><br>                                <HeaderStyle Width="70px" /><br>                                <ItemStyle CssClass="MyImageButton" /><br>                            </telerik:TreeListEditCommandColumn><br>                        </Columns><br>            </telerik:RadTreeList><br>            <br>            </telerik:RadAjaxPanel><br>        </td><br>    </tr><br></table>

File .CS:
    public partial class TasksList : System.Web.UI.UserControl<br>    {<br>        protected void Page_Load(object sender, EventArgs e)<br>        {<br>            <br>        }<br><br>        protected void responsiblesImageButton_Click(object sender, ImageClickEventArgs e)<br>        {<br><span class="Apple-tab-span" style="white-space:pre">            </span>//Do something<br>        }<br><br>        protected void notesImageButton_Click(object sender, ImageClickEventArgs e)<br>        {   <br><span class="Apple-tab-span" style="white-space:pre">            </span>//Do something<br>        }<br><br>        protected void OnAjaxUpdate(object sender, Telerik.Web.UI.ToolTipUpdateEventArgs args)<br>        {<br>            this.UpdateToolTip(args.Value, args.UpdatePanel);<br>        }<br><br>        private void UpdateToolTip(string elementID, UpdatePanel panel)<br>        {<br>            Control ctrl = Page.LoadControl("Detail.ascx"); //user control with a gridview<br><br>            panel.ContentTemplateContainer.Controls.Add(ctrl);<br>            HumanResourcesByTask detail = (HumanResourcesByTask)ctrl;<br>            detail.DataSource = Presenter.ProdLinHumanResourcesByTask(Int32.Parse(elementID));<br>        }<br><br>        protected void tasksListRadTreeList_NeedDataSource(object sender, Telerik.Web.UI.TreeListNeedDataSourceEventArgs e)<br>        {<br>            tasksListRadTreeList.DataSource = //set datasource;<br>            RadToolTipManager1.DataBind();<br>        }<br><br>        protected void tasksListRadTreeList_InsertCommand(object sender, Telerik.Web.UI.TreeListCommandEventArgs e)<br>        {<br>            //Do something<br>        }<br><br>        protected void tasksListRadTreeList_ItemDataBound(object sender, Telerik.Web.UI.TreeListItemDataBoundEventArgs e)<br>        {<br>            if (e.Item.ItemType == Telerik.Web.UI.TreeListItemType.Item || e.Item.ItemType == Telerik.Web.UI.TreeListItemType.AlternatingItem)<br>            {<br>                ImageButton item = (ImageButton)((Telerik.Web.UI.TreeListDataItem)e.Item).FindControl("responsiblesImageButton");<br><br><br>                if (!Object.Equals(item, null))<br>                {<br>                    //Add the button (target) id to the tooltip manager<br>                    this.RadToolTipManager1.TargetControls.Add(item.ClientID, item.CommandArgument.ToString(), true);<br><br><br>                }<br>            }<br>        }<br><br><br>        protected void tasksListRadTreeList_ItemCreated(object sender, Telerik.Web.UI.TreeListItemCreatedEventArgs e)<br>        {<br>         <br>         }<br>        <br>        protected void tasksListRadTreeList_UpdateCommand(object sender, Telerik.Web.UI.TreeListCommandEventArgs e)<br>        {<br>           //Do something<br>        }<br><br>        protected void tasksListRadTreeList_DeleteCommand(object sender, Telerik.Web.UI.TreeListCommandEventArgs e)<br>        {<br>            //Do something<br>        }<br>        <br>        #endregion<br><br>        #endregion<br>    }<br>

0
Andrey
Telerik team
answered on 20 Jul 2012, 07:27 AM
Hello,

I reviewed your code and noticed that you are calling DataBind method of RadToolTipManager in the NeedDataSource, try to remove the call to the DataBind method in the NeedDataSource and check whether you are experiencing the same issue.

Additionally, in the UpdateToolTIp method you are assigning datasource to the "detail" control. Are you sure that the user controls exposes this method and could you share what controls are contained in this control.

Regards,
Andrey
the Telerik team
If you want to get updates on new releases, tips and tricks and sneak peeks at our product labs directly from the developers working on the RadControls for ASP.NET AJAX, subscribe to their blog feed now.
Tags
ToolTip
Asked by
Franklin
Top achievements
Rank 1
Answers by
Andrey
Telerik team
Franklin
Top achievements
Rank 1
Share this question
or