在网上找了很多,都出现了不同的问题,最后修改了一个版本,觉得好用,就拿出来共享下
1
#region 无数据显示表头
2
protected void OnlyShowGridViewHeader(GridView gv, DataTable dt)
3
{
4
if (dt.Rows.Count == 0)
5
{
6
dt.Rows.Add(dt.NewRow());
7
gv.DataSource = dt;
8
gv.DataBind();
9
foreach (TableCell cell in gv.Rows[0].Cells)
10
if (cell.HasControls())
11
foreach (Control ctrl in cell.Controls)
12
ctrl.Visible = false;
13
gv.Rows[0].Cells[0].Text = "";
14
//gv.Rows[0].Cells[gv.Columns.Count / 2-1].Text = "没有数据!";
15
}
16
}
17
18
protected void OnlyShowGridViewHeader(GridView gv, DataSet ds, string tableName)
19
{
20
OnlyShowGridViewHeader(gv, ds.Tables[tableName]);
21
}
22
23
protected void OnlyShowGridViewHeader(GridView gv, DataSet ds)
24
{
25
OnlyShowGridViewHeader(gv, ds.Tables[0]);
26
}
27
#endregion
#region 无数据显示表头2
protected void OnlyShowGridViewHeader(GridView gv, DataTable dt)3
{4
if (dt.Rows.Count == 0)5
{6
dt.Rows.Add(dt.NewRow()); 7
gv.DataSource = dt;8
gv.DataBind();9
foreach (TableCell cell in gv.Rows[0].Cells)10
if (cell.HasControls())11
foreach (Control ctrl in cell.Controls)12
ctrl.Visible = false;13
gv.Rows[0].Cells[0].Text = "";14
//gv.Rows[0].Cells[gv.Columns.Count / 2-1].Text = "没有数据!";15
}16
}17

18
protected void OnlyShowGridViewHeader(GridView gv, DataSet ds, string tableName)19
{20
OnlyShowGridViewHeader(gv, ds.Tables[tableName]);21
}22

23
protected void OnlyShowGridViewHeader(GridView gv, DataSet ds)24
{25
OnlyShowGridViewHeader(gv, ds.Tables[0]);26
}27
#endregion一定要在数据绑定后再调用这个方法,呵呵
1
public void gvCheckDataBind()
2
{
3
DataSet ds = new DataSet();
4
ds = chk.QueryChecksCommand(drpOperateMode.SelectedValue, key.Text.Trim(), gm1.Date.ToString(), gm2.Date.ToString(), 2);
5
gvChecks.DataSource=ds;
6
gvChecks.DataBind();
7
OnlyShowGridViewHeader(gvChecks, ds);
8
}
public void gvCheckDataBind()2
{3
DataSet ds = new DataSet();4
ds = chk.QueryChecksCommand(drpOperateMode.SelectedValue, key.Text.Trim(), gm1.Date.ToString(), gm2.Date.ToString(), 2);5
gvChecks.DataSource=ds;6
gvChecks.DataBind();7
OnlyShowGridViewHeader(gvChecks, ds);8
}


浙公网安备 33010602011771号