Этот источник данных разделен на две части. Одна из них — вызов данных из класса данных, а затем управление параметрами подкачки и вспомогательными элементами управления подкачкой страниц в этом источнике данных! На передней панели есть три элемента управления для управления перелистыванием страниц, раскрывающийся список и две кнопки LinkButton!
Дополнительные методы манипулирования данными в классах см. на странице http://thcjp.cnblogs.com/archive/2006/06/18/428775.html.
Вызов метода fill() очень прост и требует повторной привязки. Просто напишите где-нибудь fill(), хаха! Но его нужно писать, например, после выполнения действия перелистывания страницы!
Ниже приведен метод ds в классе db.
общедоступный статический DataTable ds (строка que)
{//Вернуть таблицу данных, загруженную сообщениями, определенными SQL,
OleDbConnection con = odb.con();
OleDbDataAdapter oda = новый OleDbDataAdapter();
oda.SelectCommand = новый OleDbCommand (que, con);
DataSet ds = новый DataSet();
oda.Fill(ds,"thc");
return ds.Tables["thc"];
con.Закрыть();
}Источник данных, используемый следующим методом, указан выше.
личное заполнение пустоты()
{//Способ сделать это, потому что на странице будет несколько привязок
//Установим здесь скрытую метку для хранения индекса текущей страницы
int cup = Convert.ToInt32(pagelbl.Text);
ps = new PagedDataSource();//НОВЫЙ источник данных подкачки;
ps.DataSource = odb.ds("select * from Guest Order by id desc").DefaultView;//Отправляем оператор SQL для определения источника данных. Это немного запутанно, хаха.
ps.AllowPaging = true;//Разрешить пейджинг
ps.PageSize = 2;//Установим количество страниц
ps.CurrentPageIndex = чашка-1;
если (!IsPostBack)
{//Определить, загружается ли страница в первый раз
for (int i = 1; i <= ps.PageCount; i++)
{//Зацикливание номеров страниц
pageddl.Items.Add(i.ToString());
}
}
//Следующее в основном предназначено для управления включением кнопок вверх и вниз по странице.
pageup.Enabled = правда;
pagedown.Enabled = правда;
если (ps.IsFirstPage)
{//Если это главная страница, кнопка предыдущей страницы недоступна.
pageup.Enabled = ложь;
}
если (ps.IsLastPage)
{//Если это последняя страница, кнопка следующей страницы недоступна.
pagedown.Enabled = ложь;
}
//Устанавливаем текущее выбранное значение раскрывающегося меню номера страницы
pageddl.SelectedItem.Text = cup.ToString();
//Наконец-то можно привязать к DataList
DataList1.DataSource = пс;
DataList1.DataKeyField = "id";
СписокДанных1.Привязка Данных();
}
Далее идет обработка событий перелистывания страниц.
protected void pageddl_SelectedIndexChanged (отправитель объекта, EventArgs e)
{//Событие раскрывающегося меню номера страницы
pagelbl.Text = pageddl.SelectedItem.Text.ToString();
наполнять();
}
protected void pagedown_Click (отправитель объекта, EventArgs e)
{//Событие следующей страницы
pagelbl.Text = Convert.ToString(Convert.ToInt32(pagelbl.Text)+1);
наполнять();
}
protected void pageup_Click (отправитель объекта, EventArgs e)
{//Событие предыдущей страницы
pagelbl.Text = Convert.ToString(Convert.ToInt32(pagelbl.Text)-1);
наполнять();
}