Ben*_*ury 5 asp.net gridview updatepanel
我在更新面板中使用GridView.我有gridview生成的编辑和取消按钮.
我第一次单击编辑时,gridview编辑模板显示正常.然后,如果我单击取消,或在另一行编辑,则没有任何反应.似乎更新面板已停止工作.
如果我在没有更新面板的情况下做同样的事情,回发工作正常,gridview会做它应该做的事情(尽管它刷新整个页面非常麻烦,这就是我想使用updatepanel的原因!)
<asp:UpdatePanel ID="upSentOrders" runat="server" UpdateMode="Conditional">
<ContentTemplate>
<asp:GridView ID="gvSentOrders" runat="server"
autogeneratecolumns="False"
allowpaging="false"
DataKeyNames="titxn_id"
AlternatingRowStyle-CssClass="gvAlternate"
CssClass="gvTable"
OnRowDataBound="addSentTotals"
OnRowEditing="editOrder"
OnRowCancelingEdit="cancelEdit"
OnDataBound="showSentTotals"
AutoGenerateEditButton="true"
AutoGenerateDeleteButton="false"
ShowFooter="true"
ShowHeader="true">
<Columns>
<asp:TemplateField>
<HeaderTemplate>
<table class="basketHeader">
<tr>
<td class="basketTitle"><asp:Label ID="lblTitle" runat="server" Text="Order Date" /></td>
<td class="basketPX"><asp:Label ID="lblPXOffer" runat="server" Text="Part Ex" /></td>
<td class="basketCash"><asp:Label ID="lblCashOffer" runat="server" Text="Cash" /></td>
<td class="basketDelete"> </td>
</tr>
</table>
</HeaderTemplate>
<ItemTemplate>
<table class="basket">
<tr>
<td class="basketTitle"><asp:Label ID="lblTitle" runat="server" Text='<%# String.Format("{0:dd MMMM yyyy}", Eval("titxn_date")) %>' /></td>
<td class="basketPX"><asp:Label ID="lblPXOfferItem" runat="server" Text='<%# "£" + Eval("titxn_totalpxatsend") %>' /></td>
<td class="basketCash"><asp:Label ID="lblCashOfferItem" runat="server" Text='<%# "£" + Eval("titxn_totalcashatsend") %>' /></td>
<td class="basketDelete"><asp:Button ID="btnEdit" Text="" CommandArgument="1" runat="server" CssClass="editButton" ToolTip="View Order" OnClick="viewOrder" /></td>
</tr>
</table>
</ItemTemplate>
<EditItemTemplate>
<table class="basket">
<tr>
<td class="basketTitle"><asp:Label ID="lblTitle" runat="server" Text='<%# String.Format("{0:dd MMMM yyyy}", Eval("titxn_date")) %>' /></td>
<td class="basketPX"><asp:Label ID="lblPXOfferItem" runat="server" Text='<%# "£" + Eval("titxn_totalpxatsend") %>' /></td>
<td class="basketCash"><asp:Label ID="lblCashOfferItem" runat="server" Text='<%# "£" + Eval("titxn_totalcashatsend") %>' /></td>
<td class="basketDelete"><asp:Button ID="btnStopEdit" Text="" CommandArgument="-1" runat="server" CssClass="stopEditButton" ToolTip="View Order" OnClick="viewOrder" /></td>
</tr>
<tr>
<td colspan="4">
Items GridView here...
</td>
</tr>
<tr>
<td colspan="4">
<asp:Label ID="lblAddress" runat="server" Text='<%# Eval("titxn_name") + ", " + Eval("titxn_addressnumber") + " " + Eval("titxn_addressone") + ", " + Eval("titxn_addresstown") + ", " + Eval("titxn_addresscounty") + ", " + Eval("titxn_addresscountry") + ", " + Eval("titxn_addresspostcode") + "." %>' />
</td>
</tr>
</table>
</EditItemTemplate>
<FooterTemplate>
<table class="basketTotals">
<tr>
<td class="basketTitle">Total Still To Arrive</td>
<td class="basketPX"><asp:Label ID="lblPxTotal" runat="server" Text="" /></td>
<td class="basketCash"><asp:Label ID="lblCashTotal" runat="server" Text="" /></td>
<td class="basketDelete"> </td>
</tr>
</table>
</FooterTemplate>
</asp:TemplateField>
</Columns>
<EmptyDataTemplate>
<p>There is no orders still being processed. Look like we've already completed all the orders you've sent us!</p>
</EmptyDataTemplate>
</asp:GridView>
</ContentTemplate>
</asp:UpdatePanel>
Run Code Online (Sandbox Code Playgroud)
代码背后......
protected void editOrder(object sender, GridViewEditEventArgs e)
{
gvSentOrders.EditIndex = e.NewEditIndex;
bindSentGridView();
}
protected void cancelEdit(object sender, GridViewCancelEditEventArgs e)
{
gvSentOrders.EditIndex = -1;
bindSentGridView();
}
Run Code Online (Sandbox Code Playgroud)
任何想法都会有很大的帮助.谢谢.
| 归档时间: |
|
| 查看次数: |
4004 次 |
| 最近记录: |