日期:2014-05-17  浏览次数:20429 次

按钮点击后能根据Gridview某列填写的内容隐藏显示,且不影响时时填写的内容
按钮点击后能根据Gridview某列填写的内容隐藏显示,且不影响Gridview时时填写的内容。
我的Gridview是用的点击进行编辑的方法。
初步想了个方法
展开显示全部按钮Click事件:
 protected void LinkButton_ViewAll_Click(object sender, EventArgs e)
    {
              //将未隐藏的显示,也就是列中未填内容的
    }
收缩按钮Click事件:
    protected void LinkButton_Relevance_Click(object sender, EventArgs e)
    {
  DataTable dt = new DataTable();
        for (int i = 0; i < this.GridView.Rows.Count; i++)
        {
            Label lb = (Label)this.GridView.Rows[i].FindControl("Label_DFTComments");
            if (lb.Text == "")//为空时隐藏
            {
                this.GridView.Rows[i].Visible = false;
            }
else
{
//[color=#0000FF]不为空时将未隐藏的列依次加到 上面的 dt中 该如何加??????[color]这个的主要原因是考虑到点击Gridview编辑时会有个遍历
}
            
        }

    }

------解决方案--------------------
不太明白整体的意思,但[color=#0000FF]不为空时将未隐藏的列依次加到 上面的 dt中 该如何加??????[color]这个的主要原因是考虑到点击Gridview编辑时会有个遍历此句实现的方法思路。
DataTable dt = new DataTable();
         for (int i = 0; i < this.GridView.Rows.Count; i++)
         {
             Label lb = (Label)this.GridView.Rows[i].FindControl("Label_DFTComments");
             if (lb.Text == "")//为空时隐藏
             {
                 this.GridView.Rows[i].Visible = false;
             }
 else
 {  
//加内容
      DataRow dr = dt.NewRow();
        dr["项"] = 内容;
        dt.Rows.Add(dr);

 }
------解决方案--------------------
引用:
Gridview中有隐藏行,只要能把未隐藏行赋值给Datatable就行,难道要一行一行赋?有简单的方法不?

用js来实现。
var table = document.getElementById("<%=gridview.ClientID%>");
把这个table返回就可以了。
------解决方案--------------------
试试linq与datatable结合的加载到Gridview