我有一个带有TextBox对象的ASPX表单。
它在后面的代码中定义为public TextBox UI_Delegate1;
,在ASPX中定义为<ASP:TextBox id="UI_Delegate1" runat="server" />
在代码后面的Page_Load
成员中,我进行了分配:
UI_Delegate.Text = "AnyText";
此控件的呈现HTML文本为:
<input name="UI_Delegate1" type="text" value="AnyText" id="UI_Delegate1" />
在表单中,我有一个具有此定义的按钮:
<button type="submit" onserverclick="SubmitChanges" runat="server">Submit Changes</button>
然后我在TextBox中键入文本,将“AnyText”值修改为其他文本,然后单击Submit Changes按钮,但单击按钮后,SubmitChanges成员后面的代码中的UI_Delegate1.Text的值仍然是“AnyText”,无论我输入什么。
换句话说,似乎ASPX正在将此控件视为只读,但我没有在任何地方设置此属性。
这种行为的可能原因是什么?
答案 0 :(得分:3)
正如@Yuriy所说,在Page_Load中进行以下更改:
if(!IsPostBack)
{
UI_Delegate1.Text = "AnyText";
}