簡體   English   中英

使用c#gridview排序的asp.net

[英]asp.net using c# gridview sorting

我有一個asp.net網格

 <asp:GridView ID="GrdUsers" runat="server" AutoGenerateColumns="False" 
                            Width="95%" BorderWidth="1px" BorderColor="Black" PagerStyle-CssClass="pgr" GridLines="Horizontal"
                            CssClass="DataGridStyle" AllowPaging="True" OnRowCommand="GrdUsers_RowCommand"
                            OnRowDeleting="GrdUsers_RowDeleting" OnRowEditing="GrdUsers_RowEditing" AllowSorting="true" OnSorting="gridView_Sorting"
                            OnPageIndexChanging="GrdUsers_PageIndexChanging">
                            <%--<EmptyDataRowStyle--%>
                            <EmptyDataRowStyle CssClass="pgr" />
                            <EmptyDataTemplate>
                                <asp:Label ID="lblNorecId" CssClass="notification error" runat="server" Text="No records were found using your search criteria."
                                    Font-Bold="true" ForeColor="Brown" Font-Names="Arial" Font-Size="Medium"></asp:Label>
                            </EmptyDataTemplate>
                            <Columns>
                                <%-- <asp:BoundField HeaderText="Name" DataField="User_Fullname" />
      <asp:BoundField HeaderText="City" DataField="User_city" />
      <asp:BoundField HeaderText="State" DataField="User_state" />
      <asp:BoundField HeaderText="Zip" DataField="User_zip" />
      <asp:BoundField HeaderText="Joining Date" DataField="User_joiningdate" />--%>
                                <asp:BoundField DataField="catId" HeaderText="Categery Id" Visible="False" />
                                <asp:BoundField DataField="MasterCName" HeaderText="Master Categery" />
                                <asp:BoundField DataField="CatName" HeaderText="Sub Categery" />
                                <asp:BoundField DataField="GearID" HeaderText="GearID" Visible="False" />
                                <asp:BoundField DataField="GearName" HeaderText="Gear" />
                                <asp:TemplateField HeaderText="RentHourly" SortExpression="RentHourly">

                                    <ItemTemplate>
                                        <asp:Label ID="Label7" runat="server" Text="$"></asp:Label>
                                        <asp:Label ID="Label1" runat="server" Text='<%# Bind("RentHourly") %>'></asp:Label>

                                    </ItemTemplate>
                                </asp:TemplateField>
                                <asp:TemplateField HeaderText="Rentdaily" SortExpression="Rentdaily">

                                    <ItemTemplate>
                                    <asp:Label ID="Label8" runat="server" Text="$"></asp:Label>
                                        <asp:Label ID="Label2" runat="server" Text='<%# Bind("Rentdaily") %>'></asp:Label>

                                    </ItemTemplate>
                                </asp:TemplateField>
                                <asp:TemplateField HeaderText="RentWeekend" Visible="false">

                                    <ItemTemplate>
                                    <asp:Label ID="Label9" runat="server" Text="$" Visible="false"></asp:Label>
                                        <asp:Label ID="Label3" runat="server" Text='<%# Bind("RentWeekend") %>' Visible="false"></asp:Label>

                                    </ItemTemplate>
                                </asp:TemplateField>
                                <asp:TemplateField HeaderText="RentWeekly" Visible="false">

                                    <ItemTemplate>
                                    <asp:Label ID="Label10" runat="server" Text="$" Visible="false"></asp:Label>
                                        <asp:Label ID="Label4" runat="server" Text='<%# Bind("RentWeekly") %>' Visible="false"></asp:Label>

                                    </ItemTemplate>
                                </asp:TemplateField>
                                <asp:TemplateField>
                                    <ItemTemplate>
                                        <asp:ImageButton ID="btnEdit" runat="server" CommandName="edit" CommandArgument='<%# DataBinder.Eval(Container.DataItem, "GearID") %>'
                                            ImageUrl="~/img/icons/16/edit_icon.png" />
                                    </ItemTemplate>
                                </asp:TemplateField>
                                <asp:TemplateField>
                                    <ItemTemplate>
                                        <asp:ImageButton ID="btnDel" runat="server" CommandName="delete" CommandArgument='<%# DataBinder.Eval(Container.DataItem, "GearID") %>'
                                            ImageUrl="~/img/icons/16/cancel.png" />
                                        <cc1:ConfirmButtonExtender ID="btnDel_ConfirmButtonExtender" runat="server" ConfirmText="Do You  Want To Delete?"
                                            Enabled="True" TargetControlID="btnDel">
                                        </cc1:ConfirmButtonExtender>
                                    </ItemTemplate>
                                </asp:TemplateField>
                            </Columns>
                            <PagerSettings Mode="NextPrevious" NextPageText="Next" PreviousPageText="Last" />
                            <RowStyle HorizontalAlign="Center" />
                            <AlternatingRowStyle BackColor="#DBDBDB" ForeColor="Black" HorizontalAlign="Center" />
                        </asp:GridView>

現在我想按升序和降序按小時和每日對它們進行排序

看來這是一個古老的問題,但是最好的選擇是使用ObjectDataSource綁定網格。

一旦使用了ObjectDataSource,就可以讓它自動為您在ObjectDataSource上指定的SelectMethod提供SortDirection,SortColumn,CurrentPage和PageSize。

在此業務方法(您的SelectMethod)中,您可以干凈地發出適當的命令以僅查詢當前頁面所需的數據並應用適當的排序表達式。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM