1、无数据依然显示表头
// 参数:所要绑定的GridView 所要绑定的数据集
public void BindNoRecords(GridView gridView, DataSet ds)
{
if(ds.Tables[0].Rows.Count == 0)
{
ds.Tables[0].Rows.Add(ds.Tables[0].NewRow());
gridView.DataSource = ds;
gridView.DataBind();
int columnCount = gridView.Rows[0].Cells.Count;
gridView.Rows[0].Cells.Clear();
gridView.Rows[0].Cells.Add(new TableCell());
gridView.Rows[0].Cells[0].ColumnSpan = columnCount;
gridView.Rows[0].Cells[0].Text = "没有任何记录!";
gridView.RowStyle.HorizontalAlign = System.Web.UI.WebControls.HorizontalAlign.Center;
}
}
2、BoundField的格式化字符串
DataFormatString="{0:F}" 还要加上HtmlEncode="false"才会生效。
至于{0:F}格式请参照 String.Format格式说明
3、分页
将AllowPaging属性设置为true,pagesize设置成你要求每页显示的行数,在pagerSettings中设置分页样式
如 :
FirstPageText:首页
LastPageText:尾页
NextPageText:下一页
PreviousPageText:上一页
Mode:NextPreviousFirstLast
给GridView1添加GridView1_PageIndexChanging事件
写入代码如:
protected void GridView1_PageIndexChanging(object sender, GridViewPageEventArgs e)
{
if (GridView1.EditIndex != -1)
{
e.Cancel = true;
}
else
{
GridView1.PageIndex = e.NewPageIndex;
dataBind();
}
}
注:dataBind();是你绑定数据的函数,接触过GridView的程序员都应该知道怎么写吧。
这样一个有分页功能的gridview就实现了