现在的位置: 首页 > 综合 > 正文

ASP中GridView隐藏列和显示列。

2013年03月24日 ⁄ 综合 ⁄ 共 722字 ⁄ 字号 评论关闭

在项目开发过程中,总会遇到一些问题,在某个查询页面,可以做3中查询,但是每种查询的结果GridView中的列不相同,(有8个列名是相同的,2个列名不同)

如何根据不同的查询,加载数据时,显示相应的列。需要使用GridView的RowDataBound()事件,

在ASP页面上,先将10列都定义好。

在C#后台代码中,

 #region 根据查询条件进行隐藏列和显示列
        protected void GridView_Data_RowDataBound(object sender, GridViewRowEventArgs e)
        {
            //第几个查询
            switch (searchType)
            {
                case "search1":
                    //显示“欠款”列5,隐藏“负责人”8
                     GridView_Data.Columns[5].Visible = true;        //显示列
                     GridView_Data.Columns[8].Visible = false;       //不显示列
                    break;
                case "search2":
                    //隐藏“欠款”列,显示“负责人”
                     GridView_Data.Columns[5].Visible = false;        //不显示列
                     GridView_Data.Columns[8].Visible = true;         //显示列
                    break;
                case "search3":
                    //“欠款”列--改为“公司名称”,显示“地址”
                    GridView_Data.Columns[5].Visible = true;
                    GridView_Data.Columns[5].HeaderText= "公司名称";
                    GridView_Data.Columns[8].Visible = true;
                    break;
            }
        }
        #endregion 根据查询条件进行隐藏列和显示列



抱歉!评论已关闭.