GridView按字段升降排序

前台:

 <asp:GridView ID="gvd_List" runat="server" OnSorting="gvd_List_Sorting" AllowSorting="True"
            AllowPaging="True" CaptionAlign="Top" GridLines="Horizontal" Height="13px"
            Width="228px" >
        </asp:GridView>

<%-- <asp:GridView ID="gvd_List" runat="server" OnSorting="gvd_List_Sorting" AllowSorting="True"
                AutoGenerateColumns="false" AllowPaging="True" CaptionAlign="Top" GridLines="Horizontal"
                Height="13px" Width="628px">
                <Columns>
                    <asp:BoundField DataField="Uid" HeaderText="Uid" SortExpression="Uid" />
                    <asp:BoundField DataField="U_Name" HeaderText="U_Name" SortExpression="U_Name" />
                    <asp:BoundField DataField="Sex" HeaderText="Sex" SortExpression="Sex" />
                    <asp:BoundField DataField="Email" HeaderText="Email" SortExpression="Email" />
                    <asp:BoundField DataField="AddDate" HeaderText="AddDate" SortExpression="AddDate" />
                    <asp:BoundField DataField="Cid" HeaderText="Cid" SortExpression="Cid" />
                    <asp:BoundField DataField="Aid" HeaderText="Aid" SortExpression="Aid" />
                    <asp:BoundField DataField="Status" HeaderText="Status" SortExpression="Status" />
                </Columns>
            </asp:GridView>--%>

后台:

 

 protected void Page_Load(object sender, EventArgs e)
    {
        if (!this.IsPostBack)
        {
            this.backdatast();
            this.binddatatoGridView();
        }
    }

    private DataSet backdatast()
    {//自定义方法,返回一个dataset对象
        string strCon = ConfigurationManager.AppSettings["DataBaseConnection"];
        //定义连接数据库变量
        SqlConnection dsConn = new SqlConnection(strCon);
        //定义DataSet对象
        DataSet DS = new DataSet();
        //定义SqlDataAdapter对象
        SqlDataAdapter MyCommand = new SqlDataAdapter("select * from UserInfo ", dsConn);
        //填充数据
        MyCommand.Fill(DS, "UserInfo");
        return DS;
    }
    private void binddatatoGridView()
    {//自定义方法
        this.gvd_List.DataSource = this.backdatast().Tables[0].DefaultView;
        this.gvd_List.DataBind();
    }

    public SortDirection GridViewSortDirection
    {//属性设置
        get
        {
            if (ViewState["sortDirection"] == null)
            {
                ViewState["sortDirection"] = SortDirection.Ascending;
            }
            return (SortDirection)ViewState["sortDirection"];
        }
        set
        {
            ViewState["sortDirection"] = value;
        }
    }
    protected void gvd_List_Sorting(object sender, GridViewSortEventArgs e)
    {//GridView的sorting事件
        string sortExpression = e.SortExpression;
        if (GridViewSortDirection == SortDirection.Ascending)
        {
            GridViewSortDirection = SortDirection.Descending;
            SortGridView(sortExpression, "DESC");
        }
        else
        {
            GridViewSortDirection = SortDirection.Ascending;
            SortGridView(sortExpression, "ASC");
        }
    }

    private void SortGridView(string sortExpression, string sortdirection)
    {//自定义一个函数,
        DataTable dt = this.backdatast().Tables[0];
        DataView dv = new DataView(dt);

        dv.Sort = sortExpression + " " + sortdirection;

        gvd_List.DataSource = dv;
        this.gvd_List.DataBind();
    }

 

 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值