[英]How to count the rows in a gridview asp.net c#
我有一个正确填充的gridview。 当用户按下“搜索”按钮时,将调用函数ShowData(),该函数根据输入到文本框中的条件显示数据。 我希望能够计算gridview中创建的行数。
我知道我可以从SQL数据库表中计算它,但我觉得简单地计算gridview中的行会更容易! (如果我错了,请纠正我!)
我试过使用search_results = GridView1.Rows.Count.ToString();
在具有此标记的ShowData()函数中的代码中:
<div class="size_info" id="allSelected" runat="server" visible="false"><br />
There are <asp:Label ID="search_results" runat="server"></asp:Label> entries for this search criteria.
</div>
</div>
但它似乎没有返回任何值(甚至不是0!)。
非常感激任何的帮助!
search_results = GridView1.Rows.Count.ToString();
将编译错误作为
System.String无法转换为System.Web.UI.Label
使用
search_results.Text = GridView1.Rows.Count.ToString();
并确保在绑定网格后写入此内容。
如果您启用了Pagination
,通过使用GridView1.Rows.Count
您将只获取当前页面行,因此如果PageSize
等于10并且您有60行,那么结果将得到10,这是不正确的!
在这种情况下,你需要这样:
protected void GridView1_OnRowDataBound(object sender, GridViewRowEventArgs e)
{
var d = (DataView)SqlDataSource1.Select(DataSourceSelectArguments.Empty);
if (d != null) lblGridRowsCount.Text = d.Count.ToString();
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.