有一百种不同的方式来解决这个问题。 ASP.NET基础结构包含一个名为ViewState的东西,它允许页面及其控件在页面浏览中保留任意数据和对象。
有一个<form>
,但您可以有不限数量的链接和按钮,以不同的方式提交表单 - 当页面为posts back时,每个人都可以触发自己的方法。
在您的情况下利用这种简单的方法是将页面参数存储在“下一页”链接上。这是一个非常简单的例子,假设你只需要知道页码,但它得到了关键:
<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
的方法和ASP。NET的ViewState基础结构允许CommandArgument值持久化。
宾果 - 正是我期待的信息,非常感谢! – Alex 2010-07-11 23:58:49
PS from
Alex
2010-07-12 00:04:24
对,但viewstate是邪恶的。 – 2010-07-15 19:11:33