我正在尝试从CreateProject页面获取输入到txtProjectName的内容,然后将其放入带有消息的标签中,似乎我尝试的所有内容都无效。
我把它放在页面' Congratulations.aspx'
中 <%@ PreviousPageType VirtualPath="~/Pages/CreateProject.aspx" %>
在Congratulation.aspx.cs&#39;中,这是在Page_Load
lblCongratsMsg.Text = PreviousPage.ProjectName + "has been........"
在&#39; CreateProject.aspx.cs页面中,我有这个......
public string ProjectName
{
get
{
return txtProjectName.Text.Trim();
}
}
我在这里做错了什么?
答案 0 :(得分:0)
请参阅以下教程:
http://www.java2s.com/Tutorial/ASP.NET/0100__Page-Lifecycle/CrosspagepostVBnet.htm
重点:
<asp:Button ID="Button1" Runat="server" Text="Submit page to itself"
OnClick="Button1_Click" />
<asp:Button ID="Button2" Runat="server" Text="Submit page to NextPage.aspx"
PostBackUrl="NextPage.aspx" />
要使用PreviousPageType
,您需要发布跨页帖子,而不是回发到同一页面。
答案 1 :(得分:0)
要将数据从一个网页移动到另一个网页,您可以使用ASP.NET提供的各种状态管理技术,例如:
我建议您阅读它们并了解何时应该使用哪个 - ASP.NET State Management Overview
以下是使用查询字符串的简单示例:
第一页 - 捕获数据并将用户重定向到第二页:
protected void btnOK_Click(object sender, EventArgs e)
{
string url = String.Format("Congratulations.aspx?data={0}", txtData.Text);
Response.Redirect(url);
}
第二页 - 从查询字符串中读取值并显示在Label
控件中
protected void Page_Load(object sender, EventArgs e)
{
lblData.Text = Request.QueryString["data"].ToString();
}