zoukankan      html  css  js  c++  java
  • GridView中实现双向排序

    1.aspx前台代码

    <asp:GridView ID="GridView1" runat="server" AutoGenerateColumns="false" AllowSorting="true" OnSorting="GridView1_Sorting" AllowPaging="true" PageSize="10" OnPageIndexChanging="GridView1_PageIndexChanging">
                            <Columns>
                            <asp:BoundField DataField="deptid" HeaderText="部门代码" SortExpression="deptid"/>
                            <asp:BoundField DataField="deptename" HeaderText="部门名称" SortExpression="deptename"/>
                            <asp:TemplateField SortExpression="BUID" HeaderText="BUID">
                            <ItemTemplate>
                                <asp:Label ID="Label1" runat="server"   Text='<%# Bind("BUID") %>' ToolTip='<%# DataBinder.Eval(Container.DataItem, "BUID") %>'></asp:Label>
                            </ItemTemplate>
                            </asp:TemplateField>
                            </Columns>
                            </asp:GridView>

    2.aspx.cs后台代码

    protected void Page_Load(object sender, EventArgs e)
        {
            if (!this.IsPostBack)
            {
                ViewState["SortOrder"] = "deptid";
                ViewState["OrderDire"] = "asc";
                BindGridView();
            }
        }

        protected void BindGridView()
        {
          
            DataSet ds = new DataSet();
            ds = MIS.Users.GetDept();

            DataView dv = ds.Tables[0].DefaultView;
            string sort = (string)ViewState["SortOrder"] + " " + (string)ViewState["OrderDire"];
            dv.Sort = sort;

            this.GridView1.DataSource = dv;

            this.GridView1.DataBind();

        }
        protected void GridView1_Sorting(object sender, GridViewSortEventArgs e)
        {
            string vortExp = e.SortExpression;
            if (ViewState["SortOrder"].ToString() == vortExp)
            {
                if ((string)ViewState["OrderDire"] == "desc")
                {
                    ViewState["OrderDire"] = "asc";
                }
                else if ((string)ViewState["OrderDire"] == "asc")
                {
                    ViewState["OrderDire"] = "desc";
                }
            }
            else
            {
                ViewState["SortOrder"] = e.SortExpression;
            }
            BindGridView();

        }
        protected void GridView1_PageIndexChanging(object sender, GridViewPageEventArgs e)
        {
            this.GridView1.PageIndex = e.NewPageIndex;
            BindGridView();
        }

  • 相关阅读:
    linux挂载
    kafka
    使用python27+flask
    arcpy 10.8计算最短路径,并复制出结果
    arcgis pro2.5使用试用
    arcgis engine create featureclass , gp工具
    python和c#的 opencv文字区域识别
    C#调用带参数并输出控制台的python的EXE程序
    arcgis10.8中 python27打包exe文件
    arcgis engine指定范围导出屏幕图片
  • 原文地址:https://www.cnblogs.com/ly5201314/p/1390078.html
Copyright © 2011-2022 走看看