GridView 隐藏某中得些列.并在HeadText上显示相关的信息

private void ShowInformation()
{
        DataTable dt 
= oss.GetOutStoreSearchResult(oss);
        bb 
= this.gvOutStore.ControlStyle.Height;
        
if (dt.Rows.Count == 0)
        
{
            AddDummyData(dt); 
//如果没有数据时,添加一列空值
            for (int i = 1; i < gvOutStore.Columns.Count; i++)
            
{
                
this.gvOutStore.Columns[i].Visible = false;  //这个是把除第一列以外得所有列都隐藏起来
            }

            
this.gvOutStore.Columns[0].HeaderText = "显示标题。<table style="vertical-align: bottom; width: 100%; text-align: left"><tr><td align="left" >暂无XXXX信息。</td></tr>";
            
this.gvOutStore.ControlStyle.Height = 0;
            
this.hfOutStoreID.Value = "-1";
        }

        
else
        
{
            
for (int i = 1; i < gvOutStore.Columns.Count; i++)
            
{
                
this.gvOutStore.Columns[i].Visible = true//显示所以已经隐藏起来得列.
            }

            
//this.gvOutStore.ControlStyle.Height = bb;
            this.gvOutStore.Columns[0].HeaderText = "";
        }

        
this.gvOutStore.DataSource = dt;
        
this.gvOutStore.DataBind();
}

//如果为空得时候就添加一行空得记录
    private void AddDummyData(DataTable dt)
    
{
        DataRow newRow 
= dt.NewRow();
        dt.Rows.Add(newRow);
    }

 
我想还有好多其它方法可以做到这一点.

这种法子还有一个缺点是,它得高度不知道怎么弄,我测试了一下,目前还没有发现在什么问题。

posted on 2007-03-26 00:44  小土泥  阅读(269)  评论(0编辑  收藏  举报

导航