在ASP.net 2.0中,网页的PreviousPage属性没有ViewState集合。我想使用此集合在页面之间传输信息。
答案 0 :(得分:1)
使用HttpContext.Current.Items代替... ViewState仅适用于它所在的页面。
答案 1 :(得分:1)
视图状态是页面独有的。
如果您想转移物品,
答案 2 :(得分:1)
通过使用一些可以容纳对象的基页类,可以避免使用PreviousPageType指令。 例如,你有班级
public class BaseCrossPage:System.Web.UI.Page
{
public List<Guid> Invitees = new List<Guid>();
}
所以如果第一页来自这个类
public partial class Default : BaseCrossPage
{
protected void Page_Load(object sender, EventArgs e)
{
this.Invitees = LoadInvitees();
}
}
然后您发布到的页面可以访问该对象,假设前一页派生自BaseCrossPage ...
public partial class secondPage : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
BaseCrossPage p = (BaseCrossPage)PreviousPage;
List<Guid> Invitees = p.InvitedTeams
}
}
页面之间的“视图状态”...
答案 3 :(得分:0)
你不能直接。 (见http://msdn2.microsoft.com/en-us/library/ms178139(vs.80).aspx
这是你可以做的 -
在第一页上创建公开属性,公开您要共享的信息。在第二页上,将PreviousPageType设置为aspx文件头中的第一页:
<%@ previouspagetype virtualpath="~/firstpage.aspx" %>
然后,在第二页的Load事件中获取这些属性的值:
If (Not MyBase.IsPostBack) Then
_someValue = Me.PreviousPage.SomeValue
End If