Hi;
I'd found this thread (admittedly rather old), and tried what you'd suggested, but it did not work.
I have a RadGrid with an image button in a GridTemplateColumn. I am directing the click event for that button to an onClick event (see below). I need to update another RadGrid within the onClick event for that button. I tried changing from a template column to a button column and using the ItemCommand event as an AsyncPostBackTrigger to fire the update panel, but that didn't work either. I've tried setting a PostBackTrigger also.
Thanks!
Here's the code:
Grid containing the GridTemplateColumn:
Update panel with grid and other controls that need to be updated (there are no trigger entries for the grid that needs to cause the update; I've taken out all the various attempts that I'd made):
and the code recommended in the thread I linked to above:
I'd found this thread (admittedly rather old), and tried what you'd suggested, but it did not work.
I have a RadGrid with an image button in a GridTemplateColumn. I am directing the click event for that button to an onClick event (see below). I need to update another RadGrid within the onClick event for that button. I tried changing from a template column to a button column and using the ItemCommand event as an AsyncPostBackTrigger to fire the update panel, but that didn't work either. I've tried setting a PostBackTrigger also.
Thanks!
Here's the code:
Grid containing the GridTemplateColumn:
| <rad:RadGrid ID="Page3_DisplayPayables_rgPayables" runat="server" |
| AlternatingRowStyle-BackColor="#ddeeee" AutoGenerateColumns="false" |
| EnableAJAX="True" GridLines="None" HeaderStyle-HorizontalAlign="Left" |
| Height="150" onitemcommand="Page3_DisplayPayables_rgPayables_ItemCommand" |
| onitemdatabound="Page3_DisplayPayables_rgPayables_ItemDataBound" > |
| <HeaderStyle BackColor="Black" ForeColor="White" Height="15px" /> |
| <ClientSettings> |
| <Scrolling AllowScroll="True" SaveScrollPosition="True" |
| UseStaticHeaders="True" /> |
| </ClientSettings> |
| <MasterTableView AlternatingItemStyle-BackColor="#ddeeee" Width="100%"> |
| <RowIndicatorColumn> |
| <HeaderStyle Width="20px" /> |
| </RowIndicatorColumn> |
| <ExpandCollapseColumn> |
| <HeaderStyle Width="20px" /> |
| </ExpandCollapseColumn> |
| <Columns> |
| <rad:GridBoundColumn DataField="FileNumber" HeaderText="File Number" |
| ItemStyle-Width="70"> |
| <ItemStyle Width="70" /> |
| </rad:GridBoundColumn> |
| <rad:GridBoundColumn DataField="VendorNumber" HeaderText="Vendor" |
| ItemStyle-Width="40px"> |
| <ItemStyle Width="40px" /> |
| </rad:GridBoundColumn> |
| <rad:GridBoundColumn DataField="InvoiceDate" HeaderText="Date" |
| ItemStyle-Width="50px"> |
| <ItemStyle Width="50px" /> |
| </rad:GridBoundColumn> |
| <rad:GridBoundColumn DataField="BillOfLading" HeaderText="B/L" |
| ItemStyle-Width="80px"> |
| <ItemStyle Width="80px" /> |
| </rad:GridBoundColumn> |
| <rad:GridBoundColumn DataField="AmountUSD" |
| DataFormatString="{0:###,###,###.00}" HeaderText="Amount USD" |
| ItemStyle-HorizontalAlign="Right" ItemStyle-Width="80px"> |
| <ItemStyle HorizontalAlign="Right" Width="80px" /> |
| </rad:GridBoundColumn> |
| <rad:GridBoundColumn DataField="ProratedUSD" |
| DataFormatString="{0:###,###,###.00}" HeaderText="Prorated Amount USD" |
| ItemStyle-HorizontalAlign="Right" ItemStyle-Width="100px"> |
| <ItemStyle HorizontalAlign="Right" Width="100px" /> |
| </rad:GridBoundColumn> |
| <rad:GridBoundColumn DataField="DifferenceUSD" |
| DataFormatString="{0:###,###,###.00}" HeaderText="Difference USD" |
| ItemStyle-HorizontalAlign="Right" ItemStyle-Width="100px"> |
| <ItemStyle HorizontalAlign="Right" Width="100px" /> |
| </rad:GridBoundColumn> |
| <rad:GridTemplateColumn> |
| <ItemTemplate> |
| <asp:ImageButton ID="ibtnDelete" runat="server" |
| CommandArgument='<%#Container.DataItem("VendorPayableID")%>' |
| ImageUrl="~/images/delete.png" |
| OnClick="Page3_DisplayPayables_ibtnDeletePayable_Click" /> |
| </ItemTemplate> |
| </rad:GridTemplateColumn> |
| </Columns> |
| <AlternatingItemStyle BackColor="#DDEEEE" /> |
| </MasterTableView> |
| </rad:RadGrid> |
Update panel with grid and other controls that need to be updated (there are no trigger entries for the grid that needs to cause the update; I've taken out all the various attempts that I'd made):
| <asp:UpdatePanel ID="Page3_SearchPayables_upnlControls" runat="server" ChildrenAsTriggers="true" |
| UpdateMode="conditional" OnInit="Page3_SearchPayables_upnlControls_Init"> |
| <Triggers> |
| <asp:AsyncPostBackTrigger ControlID="Page3_EnterInvoice_btnAddInvoice" EventName="Click" /> |
| <asp:AsyncPostBackTrigger ControlID="Page3_EnterInvoice_btnUpdateInvoice" EventName="Click" /> |
| <asp:AsyncPostBackTrigger ControlID="Page3_EnterInvoice_btnClearForNewInvoice" EventName="Click" /> |
| <asp:AsyncPostBackTrigger ControlID="Page3_EnterInvoice_btnDeleteInvoice" EventName="Click" /> |
| <asp:AsyncPostBackTrigger ControlID="Page3_SearchPayables_btnCheckAll" EventName="Click" /> |
| <asp:AsyncPostBackTrigger ControlID="Page3_SearchPayables_btnUncheckAll" EventName="Click" /> |
| <asp:AsyncPostBackTrigger ControlID="Page3_SearchPayables_btnAddExistingPayable" |
| EventName="Click" /> |
| </Triggers> |
| <ContentTemplate> |
| <hr /> |
| <table width="800px"> |
| <tr> |
| <td colspan="2" valign="top" align="left" style="font-size: large; font-weight: bold; |
| height: 30px;"> |
| Search/Select Existing Payables |
| </td> |
| </tr> |
| <tr> |
| <td align="right" colspan="2"> |
| File #: <asp:TextBox ID="Page3_SearchPayables_txtFileNumber" Width="75px" runat="server" |
| OnInit="Page3_SearchPayables_txtFileNumber_Init"></asp:TextBox> |
| Date from |
| <rad:RadDatePicker ID="Page3_SearchPayable_rdpStartDate" runat="server" Width="75px" |
| OnInit="Page3_SearchPayable_rdpStartDate_Init"> |
| <DateInput Skin=""> |
| </DateInput> |
| </rad:RadDatePicker> |
| to <rad:RadDatePicker ID="Page3_SearchPayable_rdpEndDate" runat="server" |
| Width="75px" OnInit="Page3_SearchPayable_rdpEndDate_Init"> |
| <DateInput Skin=""> |
| </DateInput> |
| </rad:RadDatePicker> |
| B/L: <asp:TextBox ID="Page3_SearchPayables_txtBL" Width="75px" |
| runat="server" OnInit="Page3_SearchPayables_txtBL_Init"></asp:TextBox> |
| Amount: <rad:RadNumericTextBox ID="Page3_SearchPayables_rntAmount" runat="server" |
| MaxValue="999999999.99" MinValue="0" Skin="WebBlue" Type="Number" NumberFormat-DecimalDigits="2" |
| Width="75px" OnInit="Page3_SearchPayables_rntAmount_Init"> |
| <NumberFormat DecimalDigits="2" /> |
| </rad:RadNumericTextBox> |
| |
| <asp:Button ID="Page3_SearchPayables_btnSearch" CssClass="ButtonImageStyle" runat="server" |
| Text="Search" OnClick="Page3_SearchPayables_btnSearch_Click" OnInit="Page3_SearchPayables_btnSearch_Init" /> |
| </td> |
| </tr> |
| <tr> |
| <td colspan="2"> |
| <rad:RadGrid ID="Page3_SearchPayables_rgSearchPayables" runat="server" |
| HeaderStyle-HorizontalAlign="Left" Height="150" |
| AlternatingRowStyle-BackColor="#ddeeee" AutoGenerateColumns="false" Width="800px" GridLines="None"> |
| <HeaderStyle BackColor="Black" ForeColor="White" Height="15px" /> |
| <ClientSettings> |
| <Scrolling AllowScroll="True" UseStaticHeaders="True" SaveScrollPosition="True" /> |
| </ClientSettings> |
| <MasterTableView Width="100%" AlternatingItemStyle-BackColor="#ddeeee" |
| DataKeyNames="FileNumber,Vendor,PayableDate,BL,InvoiceUSD"> |
| <Columns> |
| <rad:GridTemplateColumn> |
| <ItemTemplate> |
| <asp:CheckBox ID="Page3_SearchPayables_chkAddPayable" runat="server" AutoPostBack="true" |
| OnCheckedChanged="Page3_SearchPayables_chkAddPayable_CheckChanged" /> |
| </ItemTemplate> |
| </rad:GridTemplateColumn> |
| <rad:GridBoundColumn DataField="FileNumber" HeaderText="File #" ItemStyle-Width="100" /> |
| <rad:GridBoundColumn DataField="Vendor" HeaderText="Vendor" ItemStyle-Width="100" /> |
| <rad:GridBoundColumn DataField="PayableDate" HeaderText="Date" ItemStyle-Width="100" /> |
| <rad:GridBoundColumn DataField="BL" HeaderText="B/L" ItemStyle-Width="125" /> |
| <rad:GridBoundColumn DataField="InvoiceUSD" HeaderText="Amount USD" ItemStyle-Width="90" |
| ItemStyle-HorizontalAlign="Right" DataFormatString="{0:###,###,###.00}" /> |
| <%-- taken out because of divide by zero error (see stored proc for more info) |
| <rad:GridBoundColumn DataField="ProratedUSD" HeaderText="Prorated USD" ItemStyle-Width="90" |
| ItemStyle-HorizontalAlign="Right" DataFormatString="{0:###,###,###.00}" /> |
| <rad:GridBoundColumn DataField="DifferenceUSD" HeaderText="Difference USD" ItemStyle-Width="90" |
| ItemStyle-HorizontalAlign="Right" DataFormatString="{0:###,###,###.00}" /> |
| --%> </Columns> |
| </MasterTableView> |
| </rad:RadGrid> |
| </td> |
| </tr> |
| <tr> |
| <td align="left"> |
| <asp:Button ID="Page3_SearchPayables_btnCheckAll" CssClass="ButtonImageStyle" runat="server" |
| Text="Check All" OnClick="Page3_SearchPayables_btnCheckAll_Click" OnInit="Page3_SearchPayables_btnCheckAll_Init" /> |
| |
| <asp:Button ID="Page3_SearchPayables_btnUncheckAll" CssClass="ButtonImageStyle" runat="server" |
| Text="Uncheck All" OnClick="Page3_SearchPayables_btnUncheckAll_Click" OnInit="Page3_SearchPayables_btnUncheckAll_Init" /> |
| </td> |
| <td align="right"> |
| <asp:Button ID="Page3_SearchPayables_btnAddExistingPayable" CssClass="ButtonImageStyle" |
| runat="server" Text="Add Checked Payables" OnClick="Page3_SearchPayables_btnAddExistingPayable_Click" |
| OnInit="Page3_SearchPayables_btnAddExistingPayable_Init" /> |
| </td> |
| </tr> |
| </table> |
| </ContentTemplate> |
| </asp:UpdatePanel> |
The code fired by the image button click:
| Protected Sub Page3_DisplayPayables_ibtnDeletePayable_Click(ByVal sender As Object, ByVal e As System.Web.UI.ImageClickEventArgs) |
| Dim ibtnDelete As ImageButton = CType(sender, ImageButton) |
| Dim intVendorInvoiceID As Integer = CType(Page3_DisplayInvoice_hdnInvoiceID.Value, Integer) |
| Dim intVendorPayableID As Integer = ibtnDelete.CommandArgument |
| Dim taPayable As New xsdVendorPayablesTableAdapters.QueriesTableAdapter() |
| taPayable.mar_spDeleteVendorPayable(intVendorPayableID, clsGlobalClass.strSessionUser) |
| Page3_DisplayInvoicePayables_FillControls(intVendorInvoiceID) |
| Page3_SearchPayables_FillPayablesGrid(intVendorInvoiceID) |
| Page3_SearchPayables_upnlControls.Update() |
| End Sub |
and the code recommended in the thread I linked to above:
| Protected Sub Page3_DisplayPayables_rgPayables_ItemDataBound(ByVal sender As Object, ByVal e As Telerik.WebControls.GridItemEventArgs) |
| If e.Item.ItemType <> Telerik.WebControls.GridItemType.Item Then Return |
| Dim ibtnDelete As ImageButton = CType(e.Item.FindControl("ibtnDelete"), ImageButton) |
| ScriptManager1.RegisterAsyncPostBackControl(ibtnDelete) |
| End Sub |