C# ViewState不';不能在回发ASP.NET C上工作#

C# ViewState不';不能在回发ASP.NET C上工作#,c#,asp.net,viewstate,C#,Asp.net,Viewstate,我试图为一个值字段创建一个简单的“恢复”按钮。 由于某些原因,存储在ViewState中的字符串不会显示。我遵循了一个教程,所以我真的不知道我做错了什么,我也在网上搜索答案,对许多人来说,主要问题是他们没有在页面中启用ViewState,我也没有,所以我添加了它(但按钮仍然不起作用)。至于我编写代码的方式,或者如何使用ViewState,我找不到问题。 任何帮助都将不胜感激 这就是我在Contact.aspx页面中看到的内容: <%@ Page Title="" Language="C#"

我试图为一个值字段创建一个简单的“恢复”按钮。 由于某些原因,存储在ViewState中的字符串不会显示。我遵循了一个教程,所以我真的不知道我做错了什么,我也在网上搜索答案,对许多人来说,主要问题是他们没有在页面中启用ViewState,我也没有,所以我添加了它(但按钮仍然不起作用)。至于我编写代码的方式,或者如何使用ViewState,我找不到问题。 任何帮助都将不胜感激

这就是我在Contact.aspx页面中看到的内容:

<%@ Page Title="" Language="C#" EnableViewState="true"/*...*/

<asp:TextBox class="form-control" id="usr" runat="server"/>

<asp:Button Text="Send" ID="buttonSend" runat="server"  
        onclick="buttonSend_Click"/>
<asp:Button Text="Recover" id="buttonRecover" runat="server" 
        onclick="buttonRecover_Click"/>

问题是,
Request.Form[“usr”]
不存在。控件的ID与表单Post键(输入控件的名称)不同

所以要么使用

ViewState["name"] = Request.Form[usr.UniqueID];
还是推荐的方式

ViewState["name"] = usr.Text;

是的,这就是问题所在。。非常感谢。我用usr.Text修改了代码
ViewState["name"] = usr.Text;