我的网站使用母版页,我在其中放置了两个控件,一个 TextBox 和一个 ImageButton,它们旨在在所有内容站点上查看和访问。这是Site.Master中的 aspx 代码:
<asp:TextBox ID="TextBox1" runat="server"></asp:TextBox>
<asp:ImageButton ID="ImageBtn" runat="server" ImageUrl="~/Image.png"
PostBackUrl="~/Result.aspx"></asp:ImageButton>
单击该按钮应将访问者重定向到 Result.aspx,它确实如此。
Result.aspx.cs在 Page_Load 事件中有以下内容:
protected void Page_Load(object sender, EventArgs e)
{
TextBox txbx = this.Master.FindControl("TextBox1") as TextBox;
if (txbx != null)
{
Label1.Text = "Value: " + txbx.Text;
}
else
{
Label1.Text = "TextBox seems to be null";
}
}
第一次单击图像按钮时会出现奇怪的行为。访问者从页面“值:”(即空字符串“”)获取此信息,即使在 TextBox1 中输入了值。随后的点击会正确显示值,例如“Value: SomeText”。
为什么价值不是第一次“出现”?
有没有更好的方法来确保这一点?
- 访问者被重定向到 Result.aspx AND
- 该值是“注册的”并且可以在 Result.aspx.cs 和
- 如果在不使用图像按钮 PostBackURL 的情况下输入 Result.aspx,用户将被重定向
我已经尝试过 IsPostBack 但在使用母版页作为上一页时它的行为似乎很奇怪......
非常感谢您的回答!
真挚地,
凯先生