Time
is money!



ASP GridView: Разбивка на страницы при ручном указании DataSource на языке C#.
Вставляем элементGridView в страницу:
<asp:GridView ID="GridView1" runat="server" AllowPaging="true" PageSize ="10"
</asp:GridView>
В Page_Load указываем для него DataSource:
protected void Page_Load(object sender, EventArgs e)
{
{
GridView1.DataSource = getDataSource();
GridView1.DataBind();
}
}
<asp:GridView ID="GridView1" runat="server" AllowPaging="true" PageSize ="2" OnPageIndexChanging="GridView1_PageIndexChanging">
</asp:GridView>
protected void GridView1_PageIndexChanging(object sender, GridViewPageEventArgs e)
{
GridView1.PageIndex = e.NewPageIndex;
}
При перезапуске программы исключение исчезло, однако при переключении страниц в GridView отображаются данные не изменяются. Дело в том, что т.к. мы указали DataSource вручную, то нужно в событии GridView1_PageIndexChanging опять его указать для GridView1:
protected void GridView1_PageIndexChanging(object sender, GridViewPageEventArgs e)
{
GridView1.DataSource = getDataSource();
GridView1.PageIndex = e.NewPageIndex;
GridView1.DataBind();
После перекомпиляции программы все заработало.