Gridview自动排序功能的实现

 更新时间:2014年01月21日 09:25:55   作者:  
本篇文章主要是对Gridview自动排序功能的实现代码进行了介绍,需要的朋友可以过来参考下,希望对大家有所帮助

注意两点:
1.要将gridview的AllowSorting属性置为true,同时设置OnSorting事件

2.在OnSorting事件中对排序的列设定SortExpression属性

复制代码 代码如下:

        protected void Page_Load(object sender, EventArgs e)
        {
            if (!Page.IsPostBack)
            {
                if (Session["Admin"] != "admin")
                {
                    //如果会话过期,则应该重新登录
                    this.Response.Write(" <script language=javascript>alert('你无权访问该页面,请与管理员联系!');window.location.href='../UserLogin.aspx';</script> ");
                }

复制代码 代码如下:

                ViewState["sortExpression"] = "Isdistribution";
                ViewState["sort"] = " ASC";

            }
            //绑定信息
            BindNodeInfo();
        }


        public void BindNodeInfo()
        {
            NodeLogic log = new NodeLogic();
            DataSet myset = log.GetNodeInfo();     //获取数据源
            DataView myview = myset.Tables[0].DefaultView;
            myview.Sort = ViewState["sortExpression"].ToString() +" "+ ViewState["sort"].ToString();
            this.NodeGridView.DataSource = myview;
            NodeGridView.DataKeyNames = new string[] { "node_id" };               //设置主键字段
            NodeGridView.DataBind();                                                  //绑定GridView控件 
        }

        protected void NodeGridView_PageIndexChanging(object sender, GridViewPageEventArgs e)
        {
            this.NodeGridView.PageIndex = e.NewPageIndex;
            BindNodeInfo();
        }

        protected void NodeGridView_RowDataBound(object sender, GridViewRowEventArgs e)
        {
            // 自动给第一列编号
            if (e.Row.RowIndex > -1)
            {
                e.Row.Cells[0].Text = Convert.ToString(e.Row.RowIndex + 1);
            }
        }

        protected void NodeGridView_RowDeleting(object sender, GridViewDeleteEventArgs e)
        {
            NodeLogic log = new NodeLogic();
            int id = int.Parse(this.NodeGridView.DataKeys[e.RowIndex].Values[0].ToString());
            if (log.DeleteNodeInfo(id))
            {
                this.Page.ClientScript.RegisterStartupScript(this.GetType(), "", "alert('删除成功!');", true);
            }
            else
                this.Page.ClientScript.RegisterStartupScript(this.GetType(), "", "alert('删除失败!');", true);
            //重新更新数据显示
            BindNodeInfo();
        }

        protected void NodemGridView_RowEditing(object sender, GridViewEditEventArgs e)
        {

        }

        protected void AddNode_Click(object sender, EventArgs e)
        {
            Response.Redirect("AddNode.aspx");
        }

        protected void NodeGridView_Sorting(object sender, GridViewSortEventArgs e)
        {

            if (ViewState["sortExpression"] != null)
            {
                if (ViewState["sort"].ToString() == "Asc")
                {
                    ViewState["sort"] = "Desc";
                }
                else
                {
                    ViewState["sort"] = "Asc";

                }
            }
            BindNodeInfo();
        }

相关文章

  • C#调用sql2000存储过程方法小结

    C#调用sql2000存储过程方法小结

    这篇文章主要介绍了C#调用sql2000存储过程的方法,以实例形式分别对调用带输入参数及输出参数的存储过程进行了详细分析,非常具有实用价值,需要的朋友可以参考下
    2014-10-10
  • C#生成PDF文件流

    C#生成PDF文件流

    这篇文章主要为大家详细介绍了C#生成PDF文件流的相关资料,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2017-03-03
  • C# winfroms使用socket客户端服务端的示例代码

    C# winfroms使用socket客户端服务端的示例代码

    这篇文章主要为大家详细介绍了C# winfroms使用socket客户端服务端的相关知识,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下
    2024-02-02
  • C# 灵活使用类的方法

    C# 灵活使用类的方法

    本文主要介绍了C# 灵活使用类的方法,具有很好的参考价值,下面跟着小编一起来看下吧
    2017-02-02
  • C#实现小截屏软件功能

    C#实现小截屏软件功能

    这篇文章主要为大家详细介绍了C#实现截图软件功能,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2017-06-06
  • C#调用dos窗口获取相关信息的方法

    C#调用dos窗口获取相关信息的方法

    这篇文章主要介绍了C#调用dos窗口获取相关信息的方法,涉及C#调用dos窗口及进程操作的相关技巧,具有一定参考借鉴价值,需要的朋友可以参考下
    2015-08-08
  • C#实现快捷键的几种常用方法汇总

    C#实现快捷键的几种常用方法汇总

    这篇文章主要介绍了C#实现快捷键的几种常用方法,非常实用,需要的朋友可以参考下
    2014-08-08
  • C# 利用VS编写一个简单的网游客户端

    C# 利用VS编写一个简单的网游客户端

    本文主要介绍了在visual studio中利用C#编写一个简单的网游客户端,文中通过示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2021-12-12
  • C#关联自定义文件类型到应用程序并实现自动导入功能

    C#关联自定义文件类型到应用程序并实现自动导入功能

    今天通过本文给大家分享C#关联自定义文件类型到应用程序并实现自动导入功能,代码中写入了两个注册表,实例代码给大家介绍的非常详细,需要的朋友可以参考下
    2021-09-09
  • Unity 实现贴花效果的制作教程

    Unity 实现贴花效果的制作教程

    有些游戏中的战斗痕迹的效果会通过贴花来实现的,贴花的方式多种多样。而在Unity中,有一种给官方文档提供代码的解决方案。本文将这些代码的基础上做一个绘图的贴花效果,感兴趣的童鞋可以参考一下
    2021-11-11

最新评论