views:

43

answers:

1

I am using a data grid and has bound a data source with it.

I am trying to get the total number of records in the grid in overriden InitializePager method from pagedDataSource DataSourceCount.

I thought DataSourceCount returns number of records from SelectCountMethod of ObjectDataSource, but DataSourceCount is giving me the page size and not the total number of records, whereas when I debug and see in SelectCountMethod it is returning correct number of total Records.

I am not sure how to get the data from SelectCountMethod in DataGrid.

A: 

The DataSource has a Selected Event which is fired when the Select and the SelectCount method are executed. Even if its a bit ugly it is a way to get the count:

protected void MyDataSource_Selected(object sender, ObjectDataSourceStatusEventArgs e)
{
    var count = e.ReturnValue as int?;
    if (count.HasValue)
        litResults.Text = string.Format("Total results found {0}", count);
}

My Count method of the ObjectDataSource returns an int, so of the ReturnValue of the Selected EventArgs is an int, its the count.

Hope this helps you.

PeterTheNiceGuy
Hi PeterTheNiceGuy..thanks ..its working like a charm!!