Надеюсь, кто-то может помочь. У меня есть список объектов, которые я получаю из БД. Я бы хотел, чтобы добавить только первую десятку в список CheckBoxlist. Затем с Next_click я хотел бы добавить следующие десять и так далее. Если пользователь нажимает кнопку Prev, я хотел бы добавить предыдущий 10. Таким образом, по существу, это пейджинг через CheckBoxlist.Отображение только 10 результатов из списка и следующих 10 нажатием кнопки
Вот как я пробовал и не добился успеха, он не вызывает никаких ошибок. Просто не делаю то, что хочу. Надеюсь, это возможно.
На странице загрузки они объявлены:
QuestionHandler quest = null;
protected List<QuestionView> questions = null;
int countP1 = 0;
int countP2 = 10;
Это метод binddata:
CheckBoxList1.Items.Clear();
questions = quest.GetQuestions();
List<string> display = new List<string>();
int c = 0;
foreach (QuestionView qsD in questions)
{
if (countP1.ToString().All(char.IsDigit) && countP2.ToString().All(char.IsDigit))
{
if (c >= countP1 && c <= countP2)
{
display.Add(qsD.QuestionID.ToString());
}
c++;
}
}
questions = null;
questions = new List<QuestionView>();
foreach(string s in display)
{
QuestionView q = new QuestionView();
q = quest.GetSelectQ(s);
questions.Add(q);
}
Затем добавить его к CheckBoxList (не волнуйтесь о длинной череде, сво Premade таблицы):
foreach (QuestionView qs in questions)
{
ListItem item1 = new ListItem();
item1.Text = "<table class=\"table\" style=\"border: 3px solid #8AC007;\"><tr><td>Title: </td><td width=\"300px\">" + qs.Title + "</td><td>|</td><td>Marks: </td><td width=\"300px\">" + qs.Mark + "</td><td>|</td><td>Type: </td><td width=\"300px\">" + qs.TypeID + "</td></tr><tr><td>Subject:</td><td>" + qs.SubjectID + "</td><td>|</td><td>Topic: </td><td>" + qs.TopicID + "</td><td>|</td><td>Rating: </td><td></td></tr></table>";
item1.Value = qs.QuestionID.ToString();
CheckBoxList1.Items.Add(item1);
}
следующий щелчок:
protected void btnNext_Click(object sender, EventArgs e)
{
countP1 = countP1 + 10;
countP2 = countP2 + 10;
BindData();
}
предыд нажмите:
protected void btnPrev_Click(object sender, EventArgs e)
{
countP1 = countP1 - 10;
countP2 = countP2 - 10;
BindData();
}
Надеюсь кто-то понимает, что я имею в виду и может помочь, спасибо заранее, не стесняйтесь задавать мне вопросы об этом, если вам нужно. Все это на панели обновления.
Наконец, это то, как CheckBoxList выглядит при отображении:
Куда бы я положил это? Вопросы - это список объектов QuestionView. Я никогда не работал с этим синтаксисом, поэтому просто скажу, как вопросы = getquestions (1), а затем вопросы = getquestions (2) для следующей страницы? или я понимаю это неправильно? – Cleaven
@Cleaven - это правильно, я обновил свой ответ, чтобы включить некоторые дополнительные подробности. –
Спасибо за вашу помощь, я уверен, что это сработает :) – Cleaven