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

[Solved] Refreshing RadGrid after closing window

3 Answers 230 Views
Grid
This is a migrated thread and some comments may be shown as answers.
Marco
Top achievements
Rank 1
Marco asked on 09 Mar 2009, 07:00 PM
Hello,

I have a RadGrid with a template column (contains 3 image buttons), when I click one of the buttons a RadWindow opens with fields to edit the respective entry. After the update the window should close and the grid refresh to show the changes (using an ajax request). However, the ajax request is fired but i don't see any changes (the changes are occuring as I do check for it manually in the database). Any ideas? Here's my setup:

Masterpage:
<asp:ScriptManager ID="ScriptManagerMaster" runat="server"
                </asp:ScriptManager> 
                <telerik:RadAjaxManager ID="RadAjaxManager1" runat="server"
                </telerik:RadAjaxManager> 

Content page:
<asp:LoginView ID="LoginView1" runat="server"
        <LoggedInTemplate> 
            <telerik:RadAjaxManagerProxy ID="RadAjaxManagerProxy1" runat="server"
                <AjaxSettings> 
                <telerik:AjaxSetting AjaxControlID="RadGridTarefas">  
                        <UpdatedControls>  
                            <telerik:AjaxUpdatedControl ControlID="RadGridTarefas" />  
                        </UpdatedControls>  
                    </telerik:AjaxSetting> 
                    <telerik:AjaxSetting AjaxControlID="RadAjaxManagerProxy1"
                        <UpdatedControls> 
                            <telerik:AjaxUpdatedControl ControlID="RadGridTarefas" /> 
                        </UpdatedControls> 
                    </telerik:AjaxSetting> 
                </AjaxSettings> 
            </telerik:RadAjaxManagerProxy> 
            <telerik:RadCodeBlock ID="RadCodeBlock1" runat="server"
                <script type="text/javascript">  
                    function ShowEditForm(utiliz, id, priority, state, name, deadline, progress, notes, category, rowIndex) {  
                        var grid = $find('<%= this.LoginView1.FindControl("RadMultiPageMain").FindControl("PageViewTarefas").FindControl("RadGridTarefas").ClientID %>');  
          
                        var rowControl = grid.get_masterTableView().get_dataItems()[rowIndex].get_element();  
                        grid.get_masterTableView().selectItem(rowControl, true);  
                        var params = "utiliz=" + utiliz + "&id=" + id + "&priority=" + priority + "&state=" + state + "&name=" + name + "&deadline=" + deadline + "&progress=" + progress + "&notes=" + notes + "&category=" + category; 
                        window.radopen("EditTaskForm.aspx?" + params, "EditTaskDialog");  
                        return false;  
                    } 
                    function refreshGrid(arg) {  
                        $find("<%= RadAjaxManager.GetCurrent(this).ClientID %>").ajaxRequest("Rebind");  
                    }  
                </script> 
            </telerik:RadCodeBlock> 
         
            <telerik:RadTabStrip ID="RadTabStrip1" runat="server" MultiPageID="RadMultiPageMain" SelectedIndex="0"
                <Tabs> 
                    <telerik:RadTab runat="server" PageViewID="PageViewTarefas" Selected="True" Text="Tarefas"
                    </telerik:RadTab> 
                    <telerik:RadTab runat="server" PageViewID="PageViewCategorias" Text="Categorias"
                    </telerik:RadTab> 
                    <telerik:RadTab runat="server" PageViewID="PageViewProjectos" Text="Projectos"
                    </telerik:RadTab> 
                    <telerik:RadTab runat="server" PageViewID="PageViewGrupos" Text="Grupos"
                    </telerik:RadTab> 
                    <telerik:RadTab runat="server" PageViewID="PageViewPesquisa" Text="Pesquisa"
                    </telerik:RadTab> 
                </Tabs> 
            </telerik:RadTabStrip> 
            <telerik:RadMultiPage ID="RadMultiPageMain" runat="server" SelectedIndex="0"
                <telerik:RadPageView ID="PageViewTarefas" runat="server" BackColor="White" Selected="True"
                    <telerik:RadGrid ID="RadGridTarefas" runat="server" AllowPaging="True"  
                        AllowSorting="True" DataSourceID="SqlDataSourceTasks"  
                        GridLines="None" Skin="Hay" ShowStatusBar="True"  
                        AutoGenerateColumns="False" onitemdatabound="RadGridTarefas_ItemDataBound"  
                        PageSize="20" onitemcreated="RadGridTarefas_ItemCreated"  
                        ondatabound="RadGridTarefas_DataBound"  
                        onneeddatasource="RadGridTarefas_NeedDataSource" > 
                         
                        <HeaderContextMenu> 
                            <CollapseAnimation Duration="200" Type="OutQuint" /> 
                        </HeaderContextMenu> 
                         
                        <MasterTableView DataSourceID="SqlDataSourceTasks" CommandItemDisplay="Top" GridLines="Vertical"  
                            HierarchyDefaultExpanded="True"  
                             
                            datakeynames="id_tarefas_trfs,prioridade_tarefas_trfs,estado_tarefas_trfs,nome_tarefas_trfs,prazo_tarefas_trfs,progresso_tarefas_trfs,categoria_tarefas_trfs,notas_tarefas_trfs"
                             
                            <NoRecordsTemplate>Sem tarefas para visualizar...</NoRecordsTemplate> 
                             
                            <CommandItemSettings AddNewRecordText="Adicionar Tarefa" RefreshText="Actualizar Lista" /> 
                             
                            <Columns> 
                                <telerik:GridTemplateColumn UniqueName="TmpltColTaskValidImg"
                                    <ItemTemplate> 
                                        <asp:Image ID="ImageTaskValidate" runat="server" ImageUrl="~/images/cog_error.png" /> 
                                    </ItemTemplate> 
                                </telerik:GridTemplateColumn> 
                                 
                                <telerik:GridTemplateColumn HeaderText="Opções" UniqueName="TmpltColTaskCmds" DataType="System.Int32"  
                                    ForceExtractValue="Always"
                                    <ItemTemplate> 
                                        <asp:ImageButton ID="ImgCompleteButton" runat="server" BorderStyle="None"  
                                            BorderWidth="0px" ImageUrl="~/images/tick.png"  
                                            CommandName="TaskCommand" CommandArgument="CompleteTask" 
                                            CausesValidation="False" /> 
                                             
                                        <asp:ImageButton ID="ImgEditButton" runat="server" BorderStyle="None"  
                                            BorderWidth="0px" ImageUrl="~/images/pencil.png" CommandName="TaskCommand" CommandArgument="EditTask" /> 
                                             
                                        <asp:ImageButton ID="ImgDeleteButton" runat="server" BorderStyle="None" BorderWidth="0px"  
                                            ImageUrl="~/images/cross.png" CommandArgument="DeleteTask" CommandName="TaskCommand" /> 
                                             
                                        <asp:ImageButton ID="ImgAttachButton" runat="server" BorderStyle="None" BorderWidth="0px"  
                                            ImageUrl="~/images/attach.png" CommandName="TaskCommand" CommandArgument="TaskAnexos" /> 
                                             
                                    </ItemTemplate> 
                                     
                                    <HeaderStyle HorizontalAlign="Center" VerticalAlign="Middle" /> 
                                     
                                    <ItemStyle Wrap="False" /> 
                                     
                                    </telerik:GridTemplateColumn> 
                                     
                                    <telerik:GridBoundColumn DataField="nome_tarefas_trfs" HeaderText="Tarefa"  
                                        UniqueName="ColTaskName"
                                         
                                        <HeaderStyle HorizontalAlign="Center" VerticalAlign="Middle" /> 
                                    </telerik:GridBoundColumn> 
                                     
                                    <telerik:GridTemplateColumn HeaderText="Prioridade" UniqueName="TmpltColPriorityImg"
                                        <ItemTemplate><asp:Image ID="ImagePriority" runat="server" /></ItemTemplate
                                    </telerik:GridTemplateColumn> 
                                     
                                    <telerik:GridBoundColumn DataField="nome_estados_trfs" HeaderText="Estado" UniqueName="ColTaskState"
                                        <HeaderStyle HorizontalAlign="Center" VerticalAlign="Middle" /> 
                                    </telerik:GridBoundColumn> 
                                     
                                    <telerik:GridDateTimeColumn DataField="prazo_tarefas_trfs" HeaderText="Prazo"  
                                        UniqueName="ColTaskDeadline"
                                        <HeaderStyle HorizontalAlign="Center" VerticalAlign="Middle" /> 
                                    </telerik:GridDateTimeColumn> 
                                     
                                    <telerik:GridTemplateColumn HeaderText="Progresso" UniqueName="TmpltColProgBar"
                                        <ItemTemplate> 
                                            <telerik:RadSlider ID="RadSliderProgress" runat="server" Enabled="False"  
                                                    ItemType="Tick" ShowDecreaseHandle="False" ShowDragHandle="False"  
                                                    ShowIncreaseHandle="False" Skin="Telerik" Value="50" Width="100px"  
                                                    CausesValidation="False" TrackMouseWheel="False"  
                                                ToolTip="Progresso (%)"
                                            </telerik:RadSlider> 
                                        </ItemTemplate> 
                                        <HeaderStyle HorizontalAlign="Center" VerticalAlign="Middle" /> 
                                    </telerik:GridTemplateColumn> 
                                     
                                    <telerik:GridTemplateColumn HeaderText="Prog. Estimado" UniqueName="TmpltColEstProgBar"
                                     
                                        <ItemTemplate> 
                                         
                                            <telerik:RadSlider ID="RadSliderEstProgress" runat="server" Enabled="False"  
                                                    ShowDecreaseHandle="False" ShowDragHandle="False" ShowIncreaseHandle="False"  
                                                    Skin="Telerik" Width="100px" CausesValidation="False" LiveDrag="False"
                                            </telerik:RadSlider> 
                                         
                                        </ItemTemplate> 
                                         
                                        <HeaderStyle HorizontalAlign="Center" VerticalAlign="Middle" /> 
                                             
                                    </telerik:GridTemplateColumn> 
                                     
                                    <telerik:GridDateTimeColumn DataField="criado_tarefas_trfs" HeaderText="Criado"  
                                        UniqueName="ColTaskCreated"
                                        <HeaderStyle HorizontalAlign="Center" VerticalAlign="Middle" /> 
                                    </telerik:GridDateTimeColumn> 
                                     
                                    <telerik:GridBoundColumn DataField="nome_utiliz" HeaderText="Autor"  
                                        UniqueName="ColTaskCreator"
                                        <HeaderStyle HorizontalAlign="Center" VerticalAlign="Middle" /> 
                                    </telerik:GridBoundColumn> 
                                     
                                    <telerik:GridBoundColumn DataField="nome_apps_grupos" EmptyDataText="-"  
                                        HeaderText="Grupo" UniqueName="ColTaskGroup"
                                    </telerik:GridBoundColumn> 
                                     
                                    <telerik:GridBoundColumn DataField="cod_apps_projectos" EmptyDataText="-"  
                                        HeaderText="Projecto" UniqueName="ColTaskProject"
                                    </telerik:GridBoundColumn> 
                                     
                            </Columns> 
                             
                            <EditFormSettings EditFormType="Template"></EditFormSettings> 
                             
                            <PagerStyle NextPagesToolTip="Próximas Páginas"  
                                NextPageToolTip="Próxima Página"  
                                PagerTextFormat="Mudar Página: {4} &amp;nbsp;Apresentar página {0} of {1}, itens {2} to {3} of {5}."  
                                PrevPagesToolTip="Páginas Anteriores" PrevPageToolTip="Página Anterior" /> 
                             
                            <CommandItemTemplate> 
                                <asp:LinkButton ID="LnkAddTask" runat="server"><img style="border: none 0px #000000" alt="Adicionar Tarefa" src="images/add.png" /> Adicionar Tarefa</asp:LinkButton> 
                                <asp:LinkButton ID="LnkTaskHistory" runat="server"><img style="border: none 0px #000000" alt="Ver Historico" src="images/clock.png" /> Ver Historico</asp:LinkButton> 
                            </CommandItemTemplate> 
                        </MasterTableView> 
                         
                        <ClientSettings><Scrolling AllowScroll="True" UseStaticHeaders="True" /></ClientSettings
                         
                        <FilterMenu><CollapseAnimation Duration="200" Type="OutQuint" /></FilterMenu
                         
                        <StatusBarSettings LoadingText="Carregando..." ReadyText="Pronto" /> 
                         
                        <CommandItemStyle HorizontalAlign="Left" VerticalAlign="Middle" /> 
                         
                    </telerik:RadGrid> 
                     
                    <asp:SqlDataSource ID="SqlDataSourceTasks" runat="server"  
                        ConnectionString="<%$ ConnectionStrings:AppsConnectionString %>" 
                        SelectCommand="Proc_GetUserTasks"  
                        SelectCommandType="StoredProcedure"><SelectParameters><asp:Parameter DefaultValue="01" Name="userCod" Type="String" /></SelectParameters></asp:SqlDataSource></telerik:RadPageView> 
                <telerik:RadPageView ID="PageViewCategorias" runat="server" BackColor="White">categorias</telerik:RadPageView><telerik:RadPageView ID="PageViewGrupos" runat="server" BackColor="White" Height="16px">grupos</telerik:RadPageView><telerik:RadPageView ID="PageViewProjectos" runat="server" BackColor="White">projectos</telerik:RadPageView><telerik:RadPageView ID="PageViewPesquisa" runat="server" BackColor="White">pesquisa</telerik:RadPageView> 
            </telerik:RadMultiPage> 
            <telerik:RadWindowManager ID="RadWindowManager1" runat="server" Skin="Vista"  
                Style="z-index: 7001" Behavior="Close" InitialBehavior="None" Modal="True"  
                Overlay="True" KeepInScreenBounds="True"
                <Windows> 
                    <telerik:RadWindow Skin="Vista"  ID="EditTaskDialog" runat="server"  
                        Title="Editar Tarefa" Height="620px" 
                        Width="750px" Left="" Modal="true" Overlay="True"  
                        ShowContentDuringLoad="False" Behavior="None" Behaviors="None"  
                        InitialBehavior="Pin" InitialBehaviors="Pin" ReloadOnShow="True"  
                        VisibleStatusbar="True" KeepInScreenBounds="True"  /> 
                </Windows> 
            </telerik:RadWindowManager> 
        </LoggedInTemplate> 
        <AnonymousTemplate> 
            Deve entrar na sua conta para viualizar as suas tarefas. 
        </AnonymousTemplate> 
    </asp:LoginView> 

public partial class _Default : System.Web.UI.Page 
    protected void Page_Load(object sender, EventArgs e) 
    { 
        //RadGrid grid = (RadGrid)((RadMultiPage)Page.FindControl("RadMultiPageMain")).PageViews[0].FindControl("RadGridTarefas"); 
        //grid. 
        //Session["gridSource"] =  
    } 
 
    protected void Page_PreRender(object sender, EventArgs e) 
    { 
        //RadGrid grid = LoginView1.FindControl("RadMultiPageMain").FindControl("PageViewTarefas").FindControl("RadGridTarefas") as RadGrid; 
        //string s = RadAjaxManager.GetCurrent(this.Page.Master.Page).ToString(); 
        //RadAjaxManager RadAjaxManager1 = ((RadAjaxManager)Page.Master.FindControl("RadAjaxManager1")); 
        //RadAjaxManager1.AjaxSettings.AddAjaxSetting(RadAjaxManager1, grid); 
    } 
 
    protected void Page_Init(object sender, EventArgs e) 
    { 
        RadAjaxManager radajaxManager = (RadAjaxManager)this.Page.Master.FindControl("RadAjaxManager1"); 
        RadAjaxControl.AjaxRequestDelegate handler = new RadAjaxControl.AjaxRequestDelegate(this.RadAjaxManagerProxy1_AjaxRequest); 
        radajaxManager.AjaxRequest += handler; 
    } 
 
    protected void RadGridTarefas_ItemDataBound(object sender, Telerik.Web.UI.GridItemEventArgs e) 
    { 
        if (e.Item is GridDataItem) 
        { 
            GridDataItem dataItem = (GridDataItem)e.Item; 
            DataRowView dataItemData = (DataRowView)e.Item.DataItem; 
        } 
    } 
     
    protected void RadGridTarefas_ItemCommand(object source, GridCommandEventArgs e) 
    { 
        //TaskOptionsCommand 
        if (e.CommandName.CompareTo("TaskCommand") == 0) 
        { 
            if (e.CommandArgument.ToString().CompareTo("CompleteTask") == 0) 
            { 
            } 
            else if (e.CommandArgument.ToString().CompareTo("EditTask") == 0) 
            { 
            } 
            else if (e.CommandArgument.ToString().CompareTo("DeleteTask") == 0) 
            { 
            } 
            else if (e.CommandArgument.ToString().CompareTo("TaskAnexos") == 0) 
            { 
            } 
        } 
    } 
     
    protected void RadGridTarefas_ItemCreated(object sender, GridItemEventArgs e) 
    { 
        if (e.Item is GridDataItem) 
        { 
            GridDataItem dataItem = (GridDataItem)e.Item; 
            ImageButton imgBut = (ImageButton)dataItem["TmpltColTaskCmds"].FindControl("ImgEditButton"); 
            //imgBut.Attributes["href"] = "#"; 
            string category = "0"
            if (!String.IsNullOrEmpty(e.Item.OwnerTableView.DataKeyValues[e.Item.ItemIndex]["categoria_tarefas_trfs"].ToString())) 
                category = e.Item.OwnerTableView.DataKeyValues[e.Item.ItemIndex]["categoria_tarefas_trfs"].ToString(); 
            imgBut.Attributes["onclick"] = String.Format("return ShowEditForm('{0}','{1}','{2}','{3}','{4}','{5}','{6}','{7}','{8}','{9}');"
                User.Identity.Name, 
                e.Item.OwnerTableView.DataKeyValues[e.Item.ItemIndex]["id_trfs"], 
                e.Item.OwnerTableView.DataKeyValues[e.Item.ItemIndex]["prioridade_trfs"], 
                e.Item.OwnerTableView.DataKeyValues[e.Item.ItemIndex]["estado_trfs"], 
                e.Item.OwnerTableView.DataKeyValues[e.Item.ItemIndex]["nome_trfs"], 
                e.Item.OwnerTableView.DataKeyValues[e.Item.ItemIndex]["prazo_trfs"], 
                e.Item.OwnerTableView.DataKeyValues[e.Item.ItemIndex]["progresso_trfs"], 
                e.Item.OwnerTableView.DataKeyValues[e.Item.ItemIndex]["notas_trfs"], 
                category, 
                e.Item.ItemIndex); 
        } 
    } 
 
    protected void RadAjaxManagerProxy1_AjaxRequest(object sender, AjaxRequestEventArgs e) 
    { 
        RadGrid grid = (RadGrid)LoginView1.FindControl("RadMultiPageMain").FindControl("PageViewTarefas").FindControl("RadGridTarefas"); 
        if (e.Argument == "Rebind"
        { 
            //grid.MasterTableView.SortExpressions.Clear(); 
            //grid.MasterTableView.GroupByExpressions.Clear(); 
            grid.Rebind(); 
        } 
        else if (e.Argument == "RebindAndNavigate"
        { 
            grid.MasterTableView.SortExpressions.Clear(); 
            grid.MasterTableView.GroupByExpressions.Clear(); 
            grid.MasterTableView.CurrentPageIndex = grid.MasterTableView.PageCount - 1; 
            grid.Rebind(); 
        } 
    } 
    protected void RadGridTarefas_DataBound(object sender, EventArgs e) 
    { 
         
    } 
    protected void RadGridTarefas_NeedDataSource(object source, GridNeedDataSourceEventArgs e) 
    { 
 
    } 

RadWindow form:

<body> 
    <form id="form1" runat="server"
    <asp:ScriptManager ID="ScriptManager1" runat="server"
    </asp:ScriptManager> 
    <telerik:RadAjaxManager ID="RadAjaxManager1" runat="server"
        <AjaxSettings> 
            <telerik:AjaxSetting AjaxControlID="RadSliderProgresso"
                <UpdatedControls> 
                    <telerik:AjaxUpdatedControl ControlID="RadSliderProgresso" /> 
                </UpdatedControls> 
            </telerik:AjaxSetting> 
        </AjaxSettings> 
    </telerik:RadAjaxManager> 
    <div> 
        <script type="text/javascript">  
            function CloseAndRebind(args) {  
                GetRadWindow().Close();  
                GetRadWindow().BrowserWindow.refreshGrid(args);  
            }  
  
            function GetRadWindow() {  
                var oWindow = null;  
                if (window.radWindow) oWindow = window.radWindow; //Will work in Moz in all cases, including clasic dialog  
                else if (window.frameElement.radWindow) oWindow = window.frameElement.radWindow; //IE (and Moz as well)  
  
                return oWindow;  
            }  
  
            function CancelEdit() {  
                GetRadWindow().Close();  
            }  
             
             
        </script> 
 
        <table align="center" style="border: 1px solid Black; width:61%;"
            <tr> 
                <td align="center" class="style2" colspan="2" valign="top"
                    <h3 style="text-align: center; background-color: #CCFFCC;">Tarefa</h3> 
                    <asp:Label ID="LblTaskName" runat="server"></asp:Label> 
                </td> 
                <td align="center" class="style2" rowspan="3" valign="top"
                    <h3 style="background-color: #CCFFCC">Notas</h3> 
                    <telerik:RadTextBox ID="RadTextBoxNotas" Runat="server"  
                        EmptyMessage="Tarefa não sem notas..." Rows="28" Skin="Hay" TextMode="MultiLine"  
                        Width="300px"
                    </telerik:RadTextBox> 
                </td> 
            </tr> 
            <tr> 
                <td align="center" class="style2" valign="top"
                    <h3 style="background-color: #CCFFCC">Prazo</h3> 
                    <telerik:RadCalendar ID="RadCalendar1" Runat="server"  
                        font-names="Arial,Verdana,Tahoma" forecolor="Black"  
                        style="border-color:#ececec" CultureInfo="Portuguese (Portugal)"  
                        EnableMultiSelect="False" SelectedDate="" ViewSelectorText="x"  
                        EnableMonthYearFastNavigation="False" PresentationType="Preview" Skin="Hay"
                    </telerik:RadCalendar> 
                </td> 
                <td align="left" valign="top"
                    <h3 style="text-align: center; background-color: #CCFFCC;">Categorias</h3> 
                    <telerik:RadTreeView ID="RadTreeView1" Runat="server"  
                        DataFieldID="id_tarefas_cats" DataFieldParentID="root_tarefas_cats"  
                        DataSourceID="SqlDataSourceCategorias" DataTextField="nome_tarefas_cats"  
                        DataValueField="id_tarefas_cats" Skin="Hay"  
                        LoadingMessage="Carregando ..." ToolTip="Categorias Definidas"  
                        ondatabound="RadTreeView1_DataBound"
                    </telerik:RadTreeView> 
                    <asp:SqlDataSource ID="SqlDataSourceCategorias" runat="server"  
                        ConnectionString="<%$ ConnectionStrings:DigitalGreenAppsConnectionString %>"  
                         
                        SelectCommand="SELECT [id_tarefas_cats], [utiliz_tarefas_cats], [nome_tarefas_cats], [root_tarefas_cats], [nivel_tarefas_cats] FROM [tarefas_categorias] WHERE ([utiliz_tarefas_cats] = @utiliz_tarefas_cats)"
                        <SelectParameters> 
                            <asp:QueryStringParameter Name="utiliz_tarefas_cats" QueryStringField="utiliz"  
                                Type="String" /> 
                        </SelectParameters> 
                    </asp:SqlDataSource> 
                </td> 
            </tr> 
            <tr> 
                <td class="style2" align="center" valign="top"
                    <telerik:RadCodeBlock ID="RadCodeBlock1" runat="server"
 
                        <script type="text/javascript"
                            function valueChange(sender, args) 
                            { 
                                $get("LblTaskProgress").innerHTML = sender.get_value(); 
                            } 
                        </script> 
 
                    </telerik:RadCodeBlock> 
                    <h3 style="background-color: #CCFFCC">Progresso</h3><br /> 
                    <telerik:RadSlider ID="RadSliderProgresso" runat="server" AutoPostBack="True" 
                        DecreaseText="Diminuir" DragText="Arrastar" IncreaseText="Aumentar"  
                        Skin="Telerik" ToolTip="Progresso" OnClientValueChange="valueChange"  
                        OnClientLoaded="valueChange"
                    </telerik:RadSlider> 
&nbsp;<asp:Label ID="LblTaskProgress" runat="server"></asp:Label>
                    <asp:HiddenField ID="HiddenFieldProg" runat="server" /> 
                </td> 
                <td align="center" valign="top"
                    <h3 style="background-color: #CCFFCC">Caracteristicas</h3> 
                    <telerik:RadCodeBlock ID="RadCodeBlock2" runat="server"
 
                        <script type="text/javascript"
                            function estadosChanged(sender, args) 
                            { 
                                var val = sender.get_value(); 
                                var slider = $find('<%= RadSliderProgresso.ClientID %>'); 
                                 
                                if(val == 1) 
                                { 
                                    slider.set_value(100); 
                                    return false; 
                                } 
                                else if(val == 2 || val == 5) 
                                { 
                                    slider.set_value(0); 
                                    return false; 
                                } 
                                var hide = document.getElementById("<%= HiddenFieldProg.ClientID %>"); 
                                slider.set_value(parseInt(hide.value)); 
                                return false;                           
                            } 
                        </script> 
 
                    </telerik:RadCodeBlock> 
                    Prioridade 
                    <telerik:RadComboBox ID="RadComboBoxPriorities" Runat="server"  
                        LoadingMessage="Carregando..." Skin="Hay" Text="Prioridade"
                        <Items> 
                            <telerik:RadComboBoxItem runat="server" ImageUrl="~/images/exclamation.png"  
                                Text="Urgent" Value="6" /> 
                            <telerik:RadComboBoxItem runat="server" ImageUrl="~/images/flag_red.png"  
                                Text="Muito Alto" Value="5" /> 
                            <telerik:RadComboBoxItem runat="server" ImageUrl="~/images/flag_orange.png"  
                                Text="Alto" Value="4" /> 
                            <telerik:RadComboBoxItem runat="server" ImageUrl="~/images/flag_yellow.png"  
                                Text="Normal" Value="3" /> 
                            <telerik:RadComboBoxItem runat="server" ImageUrl="~/images/flag_green.png"  
                                Text="Baixo" Value="2" /> 
                            <telerik:RadComboBoxItem runat="server" ImageUrl="~/images/flag_blue.png"  
                                Text="Muito Baixo" Value="1" /> 
                        </Items> 
<CollapseAnimation Type="OutQuint" Duration="200"></CollapseAnimation> 
                    </telerik:RadComboBox> 
                    Estado 
                    <telerik:RadComboBox ID="RadComboBoxEstados" Runat="server"  
                        DataSourceID="SqlDataSourceEstados" DataTextField="nome_estados_trfs"  
                        DataValueField="id_estados_trfs" LoadingMessage="Carregando..." Skin="Hay"  
                        Text="Estado" 
                        onclientselectedindexchanged="estadosChanged"
<CollapseAnimation Type="OutQuint" Duration="200"></CollapseAnimation> 
                    </telerik:RadComboBox> 
                    <asp:SqlDataSource ID="SqlDataSourceEstados" runat="server"  
                        ConnectionString="<%$ ConnectionStrings:DigitalGreenAppsConnectionString %>"  
                        SelectCommand="SELECT [id_estados_trfs], [nome_estados_trfs] FROM [tarefas_estados]"
                    </asp:SqlDataSource> 
                </td> 
            </tr> 
            <tr> 
                <td class="style2" align="center" bgcolor="#3399FF" colspan="3"
                    <asp:LinkButton ID="LnkAcceptChanges" runat="server" Font-Bold="True"  
                        Font-Underline="False" ForeColor="White" onclick="LnkAcceptChanges_Click"><img style="border: none 0px #000000" alt="Editar" src="images/pencil.png" /> Editar</asp:LinkButton> 
&nbsp;&nbsp; <asp:LinkButton ID="LnkCancelChanges" runat="server" onclick="LnkCancelChanges_Click"  
                        Font-Bold="True" Font-Underline="False" ForeColor="White"><img style="border: none 0px #000000" alt="Editar" src="images/cross.png" /> Cancel</asp:LinkButton> 
                </td> 
            </tr> 
        </table> 
        </div> 
    <asp:SqlDataSource ID="SqlDataSourceEdit" runat="server"  
        ConnectionString="<%$ ConnectionStrings:AppsConnectionString %>"  
        SelectCommand="Proc_GetUserTasks"  
        SelectCommandType="StoredProcedure"  
        UpdateCommand="[dbo].[Proc_EditTask]"  
        UpdateCommandType="StoredProcedure"
        <SelectParameters> 
            <asp:QueryStringParameter DefaultValue="01" Name="userCod"  
                QueryStringField="utiliz" Type="String" /> 
        </SelectParameters> 
        <UpdateParameters> 
            <asp:QueryStringParameter Name="taskID" QueryStringField="id" Type="Int32" /> 
            <asp:ControlParameter ControlID="RadTreeView1" Name="taskCat"  
                PropertyName="SelectedValue" Type="Int32" /> 
            <asp:ControlParameter ControlID="RadSliderProgresso" Name="taskProg"  
                PropertyName="Value" Type="Int32" /> 
            <asp:ControlParameter ControlID="RadComboBoxPriorities" Name="taskPrio"  
                PropertyName="SelectedValue" Type="Int32" /> 
            <asp:ControlParameter ControlID="RadComboBoxEstados" Name="taskState"  
                PropertyName="SelectedValue" Type="Int32" /> 
            <asp:ControlParameter ControlID="RadTextBoxNotas" Name="taskNotes"  
                PropertyName="Text" Type="String" /> 
        </UpdateParameters> 
    </asp:SqlDataSource> 
    </form> 
</body> 

public partial class EditTaskForm : System.Web.UI.Page 
    protected void Page_Load(object sender, EventArgs e) 
    { 
        if (!Page.IsPostBack) 
        { 
            LblTaskName.Text = Request.QueryString["name"]; 
            RadComboBoxPriorities.SelectedValue = Request.QueryString["priority"]; 
            RadComboBoxEstados.SelectedValue = Request.QueryString["state"]; 
            DateTime date = DateTime.Parse(Request.QueryString["deadline"]); 
            RadCalendar1.SelectedDate = date; 
            RadCalendar1.RangeMinDate = date; 
            HiddenFieldProg.Value = Request.QueryString["progress"]; 
            RadSliderProgresso.Value = Convert.ToInt32(Request.QueryString["progress"]); 
            RadTextBoxNotas.Text = Request.QueryString["notes"]; 
        } 
    } 
 
 
    protected void LnkCancelChanges_Click(object sender, EventArgs e) 
    { 
        ClientScript.RegisterStartupScript(Page.GetType(), "mykey""CloseAndRebind();"true); 
    } 
    protected void RadTreeView1_DataBound(object sender, EventArgs e) 
    { 
        if (!String.IsNullOrEmpty(Request.QueryString["category"]) && Request.QueryString["category"].CompareTo("0") != 0) 
        { 
            RadTreeNode n = RadTreeView1.FindNodeByValue(Request.QueryString["category"], false); 
            n.Selected = true
            RadTreeNode p = null
            p = n.ParentNode; 
            while (p != null
            { 
                p.Expanded = true
                p = p.ParentNode; 
            } 
        } 
    } 
    protected void LnkAcceptChanges_Click(object sender, EventArgs e) 
    { 
        int result = SqlDataSourceEdit.Update(); 
 
        ClientScript.RegisterStartupScript(Page.GetType(), "mykey""CloseAndRebind();"true); 
    } 
    protected void RadSliderProgresso_ValueChanged(object sender, EventArgs e) 
    { 
    } 
 

I apologise for all the code.

Thanks in advance.

3 Answers, 1 is accepted

Sort by
0
Marco
Top achievements
Rank 1
answered on 09 Mar 2009, 11:28 PM
Just to add to the post, I see the changes after a full postback (refresh in browser).

Again, thank you in advance.
0
Marco
Top achievements
Rank 1
answered on 10 Mar 2009, 09:52 AM
I figured it out, I think. I had to specify my ajax manager (masterpage), to have itself initiate ajax requests and the updated controls be the principal content placeholder. Like so:

<telerik:RadAjaxManager ID="RadAjaxManager1" runat="server"
                    <AjaxSettings> 
                        <telerik:AjaxSetting AjaxControlID="RadAjaxManager1"
                            <UpdatedControls> 
                                <telerik:AjaxUpdatedControl ControlID="ContentPlaceHolderContent" /> 
                            </UpdatedControls> 
                        </telerik:AjaxSetting> 
                    </AjaxSettings> 
                </telerik:RadAjaxManager> 

Thanks to all who gave this thread a look-see.


0
Andy F.
Top achievements
Rank 1
Iron
answered on 10 Jul 2009, 06:09 PM
I had a similar problem, but didn't like the idea of coding anything in the masterpage for the contentpage.  Got the grid to ajax-update by adding the following to the Page_Load routine:


 

RadAjaxManager.GetCurrent(Page).AjaxRequest += new RadAjaxControl.AjaxRequestDelegate(parent_AjaxRequest);  
RadAjaxManager.GetCurrent(Page).AjaxSettings.AddAjaxSetting(RadAjaxManager.GetCurrent(Page), gridResults); 

The event_routine is the AjaxRequest handler and updates the controls in the edit form template of the grid.  The AddAjaxSettings causes the refresh to correctly update those controls so that the user can see the change.

 

 

 

Tags
Grid
Asked by
Marco
Top achievements
Rank 1
Answers by
Marco
Top achievements
Rank 1
Andy F.
Top achievements
Rank 1
Iron
Share this question
or