C# 如果表为空,则GridView ASP
如果没有来自数据库的结果,如何在GridView的位置显示消息?您可以使用属性C# 如果表为空,则GridView ASP,c#,asp.net,C#,Asp.net,如果没有来自数据库的结果,如何在GridView的位置显示消息?您可以使用属性 GridView1.EmptyDataText = "No data found"; 另一种方法,但上面给出的方法是更好的方法 if (dt != null && dt.Rows.Count == 0) { lblAfterGridGridView1.TextEmptyDataText = "No recorddata found"; } if(dt.Rows.Count > 0) {
GridView1.EmptyDataText = "No data found";
另一种方法,但上面给出的方法是更好的方法
if (dt != null && dt.Rows.Count == 0)
{
lblAfterGridGridView1.TextEmptyDataText = "No recorddata found";
}
if(dt.Rows.Count > 0)
{
//Show grid here
lblAfterGrid.Text = "";
}
GridView
有一个EmptyDataRow
模板和样式,只需利用它:
<asp:gridview id="CustomersGridView"
datasourceid="CustomersSqlDataSource"
autogeneratecolumns="true"
runat="server">
<emptydatarowstyle backcolor="LightBlue"
forecolor="Red"/>
<emptydatatemplate>
<asp:image id="NoDataImage"
imageurl="~/images/Image.jpg"
alternatetext="No Image"
runat="server"/>
No Data Found.
</emptydatatemplate>
</asp:gridview>
(从.NET 2.0开始提供)还有您在
EmptyDataText=“列表框中没有项目”
和EmptyDataRowStyle CssClass
来设置样式。使用EmptyDataText
属性来设置空网格文本。只需将您的DataGrid
绑定为null,即可显示空文本
if(dt.Rows.Count > 0)
{
//call Bind grid method here
}
else
{
Grid.DataSource=null;
Grid.DataBind();
}
您还可以在代码中添加以下内容:
C#
这种方法很好,因为您可以控制何时显示哪条消息
例如,在我的情况下,当页面第一次出现(!IsPostback)时,我可以说:“请选择字段…”
如果查询结果为空,那么我可以说:“对不起,没有找到数据……”+1您可能需要设置lbl.Visible=true代码>当没有结果时,则为假。当GridView
对象提供这样的东西时,创建新标签和新条件检查是愚蠢的。不?欢迎@Fady,我已经用更好的方式更新了我的答案。@balexandre在framework 2.0中介绍了这个属性,并且不会在1.1@Adil上工作,从何时起,问这个问题的人提到了框架版本的任何内容?你应该问他作为评论。。。但是如果您知道这只提供了一种显示类似标签控件的方法,而emptydatatemplate
则提供了一个更具创造性的机会:)我支持这一点。。。自从他们开始使用MVC,就不再使用GridView
s;)@我根本不在MVC上…:(你是如何处理类似于GridView的列表的?我同意你的看法。我是如何在我所有的网格视图上使用这个列表的,除了一个。当我没有数据显示时,我宁愿不引起注意。这也是一种显示没有数据的方法:在MVC中,你停止使用那些不能处理输出代码的控件,你可以回到过去对于旧的ASP经典方式,这里有一个on。请记住,在ASP.NET网站中,您可以免费学习MVC、WebForms和网页:)
GridView1.EmptyDataText = "This table has no data, or whatever";