powered by simpleCommunicator - 2.0.59     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / ASP.NET [игнор отключен] [закрыт для гостей] / GridView постраничный вывод
8 сообщений из 8, страница 1 из 1
GridView постраничный вывод
    #38925213
Программист 3 поколения
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Второй день изучаю ASP.Net, с помощью мастеров поставил грид,
подключил к базе, данные выводятся, при переключении страниц страницы переключаются.

Следующим этапом всё снёс, поставил грид, кнопку,
по OnClick кнопки создаю DataSet и вывожу в грид, данные выводятся, страницы НЕ переключаются
Код: c#
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
 
using (SqlConnection cnn = new SqlConnection(ConfigurationManager.ConnectionStrings["cs"].ConnectionString))
            {                
                SqlCommand cmd = new SqlCommand("proc_name", cnn);
                cmd.CommandType = CommandType.StoredProcedure;
                cmd.Parameters.AddWithValue("@param", param_value);
                
                DataTable table = new DataTable();
                SqlDataAdapter adapter = new SqlDataAdapter(cmd);                
                adapter.Fill(table);

                gvMain.DataSource = table;
                gvMain.DataBind();
            }



В интернете нашёл, что нужно сделать обработчик для обработки переключения страниц:
Код: c#
1.
2.
3.
4.
5.
protected void gvMain_PageIndexChanging(object sender, GridViewPageEventArgs e)
{
     gvMain.PageIndex = e.NewPageIndex;
     gvMain.DataBind();
}


Без этого кода - переключатели страниц не работают, с ним - грид пропадает (при попытке переключения страниц).
Наверняка нужно что-то ещё, но понять не могу что..., кто-то сталкивался, подскажите.
...
Рейтинг: 0 / 0
GridView постраничный вывод
    #38925221
Фотография Axeleron
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Программист 3 поколения
Код: c#
1.
B


А установка DataSource в методе gvMain_PageIndexChanging куда пропала? Пока не будет gvMain.DataSource = table Ваш DataSource = null...
...
Рейтинг: 0 / 0
GridView постраничный вывод
    #38925245
Программист 3 поколения
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Axeleron,

Т.е. мне нужно весь код из кнопки продублировать в это событие?
Получится, что при каждом переключении страницы, с сервера будут загружаться все данные,
только грид будет отображать выбранную страницу, так это работает?
...
Рейтинг: 0 / 0
GridView постраничный вывод
    #38925256
Фотография Axeleron
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Программист 3 поколенияТ.е. мне нужно весь код из кнопки продублировать в это событие?
Но можете просто создать метод, который будет заполнять данными DataTable и байндить к гриду, а как входной параметр указать PageIndex, а вызывать его так:
Код: c#
1.
2.
3.
4.
5.
6.
7.
8.
9.
protected void Page_Load()
{
     BindData(gvMain.PageIndex);
}

protected void gvMain_PageIndexChanging(object sender, GridViewPageEventArgs e)
{
     BindData(e.NewPageIndex);
}



Программист 3 поколенияПолучится, что при каждом переключении страницы, с сервера будут загружаться все данные,
только грид будет отображать выбранную страницу, так это работает?
В данной имлементации пейджинга - да. Поэтому обычно рекомендуется постраничный фетчинг данных порциями (в размере строк выводимых в гриде) из БД.
...
Рейтинг: 0 / 0
GridView постраничный вывод
    #38925324
Программист 3 поколения
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Axeleron,

Спасибо!
Я до последнего надеялся, что всё волшебно будет работать :)
Сделал по вашему совету, всё работает, но долго т.к. каждый раз загружаются все данные.
...
Рейтинг: 0 / 0
GridView постраничный вывод
    #38925334
Фотография Axeleron
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Программист 3 поколения,
Поэтому порекомендовал бы делать постраничный запрос и вывод данных
...
Рейтинг: 0 / 0
GridView постраничный вывод
    #38942556
Программист 3 поколения
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
AxeleronПрограммист 3 поколения,
Поэтому порекомендовал бы делать постраничный запрос и вывод данных
Осталось разобраться как это сделать, спасибо!
...
Рейтинг: 0 / 0
GridView постраничный вывод
    #38948280
cherik1
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Код: c#
1.
2.
3.
4.
5.
        protected void gvUsers_PageIndexChanging(object sender, GridViewPageEventArgs e)
        {
            gvUsers.PageIndex = e.NewPageIndex;
            gvUsers.DataBind();
        }
...
Рейтинг: 0 / 0
8 сообщений из 8, страница 1 из 1
Форумы / ASP.NET [игнор отключен] [закрыт для гостей] / GridView постраничный вывод
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]