我有一个grid view
已经与模型绑定的模型,现在我想获取其中的行数GridView's Datatable
?不在页数上。
问问题
28364 次
6 回答
6
您可以将数据源转换为集合,然后按如下方式计算
var count = ((ICollection<T>)GridView.DataSource).Count;
或者,如果您有数据表作为源,那么
DataTable dt = gridView.DataSource as DataTable;
int count = dt.Rows.Count;
于 2013-02-28T07:18:15.900 回答
4
您可以将 GridView 的 DataSource 转换为 DataTable 或 DataView,然后计算行数。
DataTable dt = (DataTable) gridView.DataSource;
int count = dt.Rows.Count;
但这仅在绑定时可用,而不是在回发时可用。
要在回发时获取行数,您可以在将DataTable
其绑定到 GridView 之前将其或其行数存储在会话中。
DataTable dt = GetDataSourceTable();
Session["RowsCount"] = dt.Rows.Count;
Session["DataTable"] = dt; //Should be avoided since session are per user.
gridView.DataSource = dt;
gridView.DataBind();
稍后您可以Count
从会话中访问。
于 2013-02-28T07:18:57.710 回答
3
您是否尝试过类似以下的方法?
yourDataTable.Rows.Count();
于 2013-02-28T07:18:35.010 回答
0
你可以试试这个:
textBox1.Text = gridView1.RowCount.ToString();
于 2016-10-11T18:34:05.670 回答
0
您可以使用以下代码:
DataView MyDV = (DataView)SqldatasourceName.Select(DataSourceSelectArguments.Empty);
MyDV.RowFilter = SqldatasourceName.FilterExpression;
int RecordCount = MyDV.Count;
于 2018-12-12T16:20:05.807 回答
0
我做了以下。
使用以下内容在 Gridview Databound 上创建了一个事件。每次绑定 gridview 时,都会使用 Record 计数更新标签。
protected void GridView1_DataBound(object sender, EventArgs e)
{
RecordCountLbl.Text = "Record Count: "+ GridView1.Rows.Count.ToString();
}
于 2021-07-27T19:43:54.053 回答