Есть сто разных способов решить эту проблему.Инфраструктура ASP.NET включает в себя нечто, называемое ViewState , которое позволяет странице и ее элементам управления сохранять произвольные данные и объекты при просмотре страниц.
Существует один <form>
, но вы можетеиметь неограниченное количество ссылок и кнопок, которые отправляют форму по-разному - каждая из них может запускать свой собственный метод, когда страница отправляет обратно .
Простой способ использовать это в вашем случаесохранить параметр страницы по ссылке «следующая страница».Это очень простой пример, предполагающий, что вам нужно знать только номер страницы, но он помогает понять:
<asp:LinkButton runat="server" ID="next_page" Text="Next Page" OnClick="NextPage_Click" />
...
void Page_Load(object sender, EventArgs e)
{
if(!IsPostBack)
{
LoadData(0);
}
}
void LoadData(int page)
{
//pull page of data from twitter & show on page
next_page.CommandArgument = (page+1).ToString();
}
void NextPage_Click(object sender, EventArgs e)
{
int page = int.Parse(((LinkButton)sender).CommandArgument);
LoadData(page);
}
В этом примере мы устанавливаемCommandArgument
свойство LinkButton для индекса страницы, который мы хотим.LinkButton инициирует вызов метода NextPage_Click
, а инфраструктура ViewState в ASP.NET позволяет сохранять значение CommandArgument.