我有两个aspx文件。让我们调用第一个P1和第二个P2。在P1中,我有一个ID为"date“的HTML元素。我想访问P2的代码隐藏C#文件中的日期,但不确定如何做到这一点。我使用的是Visual Studio。
我必须在P2的代码隐藏文件中使用"using P1.aspx“吗?我必须在P2的代码隐藏文件中声明P1的对象吗?
例如,在P2的代码隐藏文件中,为什么我不能执行以下操作:
新建对象= P1 P1();object.date = ...;
到目前为止,我无法让P2以任何方式识别P1。任何帮助都将不胜感激。谢谢!
发布于 2019-09-12 23:13:46
这可以使用CrossPagePostBack...for More Info..You可以引用此链接来实现。
https://docs.microsoft.com/en-us/previous-versions/ms178139(v=vs.140)?redirectedfrom=MSDN
例如:- P1.aspx
<asp:Label ID="lblDate" runat="server" Text="Date"></asp:Label>
<asp:TextBox ID="txtDate" runat="server"></asp:TextBox>
<asp:Button ID="btnRedirect" runat="server" Text="Redirect" OnClick="btnRedirect_Click"/>
protected void btnRedirect_Click(object sender, EventArgs e)
{
Server.Transfer("~/P2.aspx");
}
Suppose...Your P1页面包含您想要在P2.aspx页面中访问的TextBox(txtDate),您可以使用CrossPagePostBack重定向到其他页面...
在P2.aspx Page on Page Load事件中,您可以很容易地找到以前的页面控件。
if (this.Page.PreviousPage != null)
{
TextBox txtDate = (TextBox)this.Page.PreviousPage.FindControl("txtDate");
}
有关详细信息,请访问...
假设您的PreviousPage,即P1.aspx有主控件页面Property...then,您可以使用this..on P2.aspx页面...
if (this.Page.PreviousPage != null)
{
Control ContentPlaceHolder1 = this.Page.PreviousPage.Master.FindControl("ContentPlaceHolder1");
TextBox txtDate = (TextBox)ContentPlaceHolder1.FindControl("txtDate");
}
https://stackoverflow.com/questions/57908653
复制相似问题