ToolTip Treelist Items .-Problem-.

4 posts, 0 answers
  1. Franklin
    Franklin avatar
    10 posts
    Member since:
    Jul 2012

    Posted 12 Jul 2012 Link to this post

    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!.
  2. Andrey
    Admin
    Andrey avatar
    836 posts

    Posted 16 Jul 2012 Link to this post

    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.
  3. UI for ASP.NET Ajax is Ready for VS 2017
  4. Franklin
    Franklin avatar
    10 posts
    Member since:
    Jul 2012

    Posted 16 Jul 2012 Link to this post

    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>

  5. Andrey
    Admin
    Andrey avatar
    836 posts

    Posted 20 Jul 2012 Link to this post

    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.
Back to Top