我有一个名为TextBox
的{{1}}和一个名为TextBoxValue
的{{1}}位于名为Button
的{{1}}上。我正在做的是,我正在使用ButtonGetValue
向ASP WebForm
填充我从上一页传递到此页面的值。我正在通过以下方式实现这一点:
DestinationPage.aspx
TextBox
是位于QueryString
的{{1}},点击它只是将数据从<asp:Button ID="ButtonCompute" runat="server" Text="Compute" OnClick="ButtonCompute_Click" ValidationGroup="ComputeGroup"/
传递给ButtonCompute
。这不是我之前谈到的Button
。
SourcePage.aspx
中的代码:
DestinationPage.aspx
SourcePage.aspx
中的代码:
Button
现在,我在这里做的是,一旦值显示在SoucePage.aspx.cs
中,就将其从int valueForDestination = 10;
Response.Redirect("~/DestinationPage.aspx?Value = + valueForDestination);
更改为DestinationPage.aspx.cs
。然后我点击int valueFromQS = Request.QueryString["Value"];
TextBoxValue.Text = valueFromQS;
<asp:Button ID="ButtonGetValueValue" runat="server" Text="Get Value" onclick="ButtonGetValue_Click" />
。而不是获得TextBoxValue
;这是更新后的值,我得到100
;这是初始值。我怎样才能获得更新的价值?
编辑1.0
我很抱歉没有提到我想用10
做什么。此ButtonGetValue
只是从100
读取值并在屏幕上打印该值。
我正在处理10
。
答案 0 :(得分:0)
除非您希望在每次回发时将其更改为QueryString值,否则您希望将其包装在!IsPostBack
中if (!Page.IsPostBack)
{
if (Request.QueryString["Value"] != null)
{
TextBoxValue.Text = Request.QueryString["Value"].ToString();
}
}
同样在您的示例代码中,您在查询字符串中传递10,并且您还说默认值为10,如果您希望它为100,那么您需要将100传递到按钮单击事件的查询字符串中