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);
}
{
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);
}
我想还有好多其它方法可以做到这一点.
这种法子还有一个缺点是,它得高度不知道怎么弄,我测试了一下,目前还没有发现在什么问题。