gridview 空表头 gridview没有数据的时候,我想显示表头+空行(“no records found”)就是在RowDataBound中判断是否有没有数据行,如果没有,数据行增加一行显示"no records found"请问如何实现? 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 把gridView隐藏起来.再<div>no records found</div> 我想把表头也显示出来本来想用emptydatatemplate不过emptydatatemplate外面会增加一个边框,不知道如何去掉 空表头可以在RowDataBound事件中绑定空头数据如果没有数据,要显示"no records found“其实可以用SKIN做到<asp:GridView runat="server" > <EmptyDataTemplate> <div style="background-color:#FFFFFF color:#ff0000"> <div>还没有记录!</div> </EmptyDataTemplate> <EmptyDataRowStyle HorizontalAlign="Center" /></asp:GridView>这个就可以实现在没有数据的时候显示还没有记录楼主试试。 显示表头+空行(“no records found”) 大家忘了表头了,使用EmptyDataTemplate不知道怎么把边框去掉? 绑定之前判断datatable是否为空如果为空 手工加入一行数据 da.Fill ( ds, "data" ); if ( ds.Tables [ "data" ].Rows.Count == 0 ) { ds.Tables [ "data" ].Columns.Clear (); ds.Tables [ "data" ].Columns.Add ( "emp_id" ); ds.Tables [ "data" ].Columns.Add ( "fname" ); ds.Tables [ "data" ].Columns.Add ( "job_id" ); DataRow dr = ds.Tables [ "data" ].NewRow (); dr [ "emp_id" ] = "No"; dr [ "fname" ] = "Record"; dr [ "job_id" ] = "Found"; ds.Tables [ "data" ].Rows.Add ( dr ); } if ( !IsPostBack ) { this.GridView1.DataSource = ds.Tables [ "data" ]; this.GridView1.DataBind (); }注意data emp_id fname job_id分别都是对应你自己的!!!当然还可以通过js客户端来实现 EmptyDataTemplate默认有个外边框,如何去掉? 去掉边框protected void GridView1_DataBinding ( object sender, EventArgs e ) { GridView1.BorderWidth = 0; } 绑定之前判断datatable是否为空请问如何判断? 绑定的时候判断数据集中数据是否为空 如果为空增加一行 和7楼的方法差不多。 if (ds.Tables[0].Rows.Count == 0) { ds.Tables[0].Rows.Add(ds.Tables[0].NewRow()); GridView1.DataSource = ds; GridView1.DataBind(); int columnCount = GridView1.Rows[0].Cells.Count; GridView1.Rows[0].Cells.Clear(); GridView1.Rows[0].Cells.Add(new TableCell()); GridView1.Rows[0].Cells[0].ColumnSpan = columnCount; GridView1.Rows[0].Cells[0].Text = "No Records Found."; } else { GridView1.DataSource = dv; GridView1.DataBind(); }行的话兄弟别忘了接贴 呵呵。 使用添加新的空行;和“EmptyDataTemplate”;都是可以的,楼上的兄弟提供的方式可用;多谢你们 gridview下载文件 如何动态设置GridView的ID属性 MessageBox的问题 水晶报表9里,如何显示多行文本?? 问个问题,关于OWC! 我在IIS上面看自己设定的网站,出现HTTP 500 - Internal server error 这是什么原因引起的 怎样决定用html控件还是web控件? 请问一下关于asp.net viewstate的问题 如何合并单元格 如何调用ajax DropDownList的问题: 有见过这种错误吗?是不是我的VS2005坏了?请问怎么解决?
本来想用emptydatatemplate
不过emptydatatemplate外面会增加一个边框,不知道如何去掉
如果没有数据,要显示"no records found“
其实可以用SKIN做到
<asp:GridView runat="server" >
<EmptyDataTemplate>
<div style="background-color:#FFFFFF color:#ff0000">
<div>还没有记录!</div>
</EmptyDataTemplate>
<EmptyDataRowStyle HorizontalAlign="Center" />
</asp:GridView>
这个就可以实现在没有数据的时候显示还没有记录
楼主试试。
大家忘了表头了,使用EmptyDataTemplate不知道怎么把边框去掉?
如果为空 手工加入一行数据
da.Fill ( ds, "data" ); if ( ds.Tables [ "data" ].Rows.Count == 0 )
{
ds.Tables [ "data" ].Columns.Clear ();
ds.Tables [ "data" ].Columns.Add ( "emp_id" );
ds.Tables [ "data" ].Columns.Add ( "fname" );
ds.Tables [ "data" ].Columns.Add ( "job_id" );
DataRow dr = ds.Tables [ "data" ].NewRow ();
dr [ "emp_id" ] = "No";
dr [ "fname" ] = "Record";
dr [ "job_id" ] = "Found";
ds.Tables [ "data" ].Rows.Add ( dr );
}
if ( !IsPostBack )
{
this.GridView1.DataSource = ds.Tables [ "data" ];
this.GridView1.DataBind ();
}
注意data emp_id fname job_id分别都是对应你自己的!!!当然还可以通过js客户端来实现
protected void GridView1_DataBinding ( object sender, EventArgs e )
{
GridView1.BorderWidth = 0;
}
请问如何判断?
if (ds.Tables[0].Rows.Count == 0)
{
ds.Tables[0].Rows.Add(ds.Tables[0].NewRow());
GridView1.DataSource = ds;
GridView1.DataBind();
int columnCount = GridView1.Rows[0].Cells.Count;
GridView1.Rows[0].Cells.Clear();
GridView1.Rows[0].Cells.Add(new TableCell());
GridView1.Rows[0].Cells[0].ColumnSpan = columnCount;
GridView1.Rows[0].Cells[0].Text = "No Records Found.";
}
else
{
GridView1.DataSource = dv;
GridView1.DataBind();
}
行的话兄弟别忘了接贴 呵呵。