嗨,我想做一个footertemplate,可以展开和折叠的结果,就像这个图像的例子在其他主题:如何将FooterTemplate添加到具有绑定字段GridView我想默认显示1个结果,并在点击后,在页脚模板上的图标显示我更多的结果,如4或5,我可以显示的代码,提前感谢。
sdnqo3pr1#
同样的工作,我已经做了我的项目!我粘贴在这里的工作。请通过它,它可能会帮助您解决您的问题ASPX:
<asp:GridView Width="100%" border="1" ID="gwProfit" RowStyle-Wrap="true" runat="server" AutoGenerateColumns="false" AlternatingRowStyle-CssClass="alternaterow" RowStyle-VerticalAlign="Bottom" ShowFooter="True" HeaderStyle-Wrap="true" OnRowCommand="gwProfit_RowCommand" OnRowDataBound="gwProfit_RowDataBound"> <Columns> <asp:TemplateField HeaderText="Start Date"> <ItemTemplate> <div class="input-append"> <asp:TextBox class="input_disabled" ID="txtStartDate" runat="server" Width="110px" Height="22px" Text='<%# Bind("StartDate","{0}") %>'> </asp:TextBox> <button class="btn123" ID="ImgStartDate" runat="server" type="button" style="height:25px;"> <i class="icon-calendar"></i> </button> </div> <ajaxToolkit:CalendarExtender ID="StartDate" runat="server" TargetControlID="txtStartDate" PopupButtonID="ImgStartDate" Format="dd-MMM-yyyy"> </ajaxToolkit:CalendarExtender> </ItemTemplate> <FooterTemplate> <asp:TextBox class="input_disabled" ID="txtNewStartDate" runat="server" Width="110px" Height="22px"> </asp:TextBox> <button class="btn123" ID="ImgStartDate" runat="server" type="button" style="height:25px;"> <i class="icon-calendar"></i> </button> </div> <ajaxToolkit:CalendarExtender ID="StartDate" runat="server" TargetControlID="txtNewStartDate" PopupButtonID="ImgStartDate" Format="dd-MMM-yyyy"> </ajaxToolkit:CalendarExtender> </FooterTemplate> </asp:TemplateField> <asp:TemplateField HeaderText="End Date"> <ItemTemplate> <asp:TextBox class="input_disabled" ID="txtEndDate" runat="server" Width="110px" Height="22px" Text='<%# Bind("EndDate","{0}") %>'> </asp:TextBox> <button class="btn123" ID="ImgEndDate" runat="server" type="button" style="height:25px;"> <i class="icon-calendar"></i> </button> <ajaxToolkit:CalendarExtender ID="EndDate" runat="server" TargetControlID="txtEndDate" PopupButtonID="ImgEndDate" Format="dd-MMM-yyyy"> </ajaxToolkit:CalendarExtender> </ItemTemplate> <FooterTemplate> <asp:TextBox class="input_disabled" ID="txtNewEndDate" runat="server" Width="110px" Height="22px"> </asp:TextBox> <button class="btn123" ID="ImgEndDate" runat="server" type="button" style="height:25px;"> <i class="icon-calendar"></i> </button> <ajaxToolkit:CalendarExtender ID="EndDate" runat="server" TargetControlID="txtNewEndDate" PopupButtonID="ImgEndDate" Format="dd-MMM-yyyy"> </ajaxToolkit:CalendarExtender> </FooterTemplate> </asp:TemplateField> <asp:TemplateField HeaderText="Profit Per Unit"> <ItemTemplate> <asp:TextBox class="input_disabled" ID="txtProfitPerUnit" Width="100px" Height="22px" runat="server" Text='<%# Bind("ProfitPerUnit","{0}") %>'> </asp:TextBox> </ItemTemplate> <FooterTemplate> <asp:TextBox class="input_disabled" ID="txtNewProfitPerUnit" Width="100px" Height="22px" runat="server" Text="0"/> </FooterTemplate> </asp:TemplateField> <asp:TemplateField HeaderText="Action" ControlStyle-Width="14px" FooterStyle-Width="14px"> <ItemTemplate> <input type="hidden" id="txtrec_status" name="txtrec_status" runat="server"/> <asp:ImageButton ID="btnDelete" runat="server" CommandName="Delete" ImageUrl="~/images/delete.gif" AlternateText="Delete" CommandArgument="<%# ((GridViewRow) Container).RowIndex%>" UseSubmitBehavior="False" /> </ItemTemplate> <FooterTemplate> <asp:ImageButton ID="btnAdd" runat="server" CommandName="Add" ImageUrl="~/images/add.png" AlternateText="Add" UseSubmitBehavior="False"/> </FooterTemplate> </asp:TemplateField> </Columns> </asp:GridView>
代码隐藏:
protected void gwProfit_RowCommand(object sender, GridViewCommandEventArgs e) { if (ViewState["dtStartDate"] != null) dtStartDate = (DataTable) ViewState["dtStartDate"]; if (e.CommandName.Equals("Add")) { TextBox txtStartDate = (TextBox)gwProfit.FooterRow.FindControl("txtNewStartDate"); TextBox txtEndDate = (TextBox)gwProfit.FooterRow.FindControl("txtNewEndDate"); TextBox txtProfitPerUnit = (TextBox)gwProfit.FooterRow.FindControl("txtNewProfitPerUnit"); if (txtEndDate.Text == "" || txtStartDate.Text == "" || txtProfitPerUnit.Text == "") { ScriptManager.RegisterStartupScript(this, GetType(), "alert", "alert('Please Select Start Date, End Date And Profit Per Unit.')", true); } else { dtStartDate.Rows.Add(dtStartDate.NewRow()); dtStartDate.Rows[dtStartDate.Rows.Count - 1]["CurrencyDeatailID"] = -2; dtStartDate.Rows[dtStartDate.Rows.Count - 1]["StartDate"] = objFunc.toDate(txtStartDate.Text); dtStartDate.Rows[dtStartDate.Rows.Count - 1]["EndDate"] = objFunc.toDate(txtEndDate.Text); dtStartDate.Rows[dtStartDate.Rows.Count - 1]["ProfitPerUnit"] = objFunc.toDecimal(txtProfitPerUnit.Text); if (dtStartDate.Rows.Count >= 0&&dtStartDate.Rows[0]["CurrencyDeatailID"].ToString()=="-1") { dtStartDate.Rows[0].Delete(); if (dtStartDate.Rows.Count > 0 && dtStartDate.Rows[0].RowState == DataRowState.Deleted) dtStartDate.Rows.RemoveAt(0); } ViewState["dtStartDate"] = dtStartDate; Profit_LoadGrid(); } } else if (e.CommandName.Equals("Delete")) { int index = objFunc.toInt(e.CommandArgument.ToString()); GridViewRow gvr = (GridViewRow)(((ImageButton)e.CommandSource).NamingContainer); int RemoveAt = gvr.RowIndex; DataTable dt = new DataTable(); dt = (DataTable)ViewState["dtStartDate"]; dt.Rows.RemoveAt(RemoveAt); dt.AcceptChanges(); ViewState["dtStartDate"] = dt; Profit_LoadGrid(); } }
imzjd6km2#
这很简单1.在GridView中激活“允许分页”。1.使分页行不可见。1.每次单击一个图标时,增大“PageSize”以展开,或单击另一个图标时,减小“PageSize”以折叠。
2条答案
按热度按时间sdnqo3pr1#
同样的工作,我已经做了我的项目!我粘贴在这里的工作。请通过它,它可能会帮助您解决您的问题
ASPX:
代码隐藏:
imzjd6km2#
这很简单
1.在GridView中激活“允许分页”。
1.使分页行不可见。
1.每次单击一个图标时,增大“PageSize”以展开,或单击另一个图标时,减小“PageSize”以折叠。