【发布时间】:2013-03-13 18:27:31
【问题描述】:
在 ASP.NET Webforms 应用程序中,我有一个包含 UserControl 的提交表单,其属性如下:
public string Name
{
get
{
String s = (String)ViewState["Name"];
return ((s == null) ? String.Empty : s);
}
set
{
ViewState["Name"] = value;
}
}
这是改编自 MSDN 演练。这被假定为“绑定”(不是数据绑定,因为我认为这是不可能的)到 ascx 中定义的文本框的内容,如下所示:
<asp:TextBox runat="server" ID="name" />
问题是,允许将其作为公共属性访问并在回发时保留状态的最佳做法是什么?
【问题讨论】:
-
默认情况下,除非您有意关闭视图状态,否则 TextBox 控件会保留数据。我错过了什么吗?
-
好的,那么我应该如何在 UserControl 中执行此操作
-
我认为你错过了这个用户控件由许多文本框组成,每个文本框都需要将其文本内容作为用户控件上的属性公开。
-
简单地暴露每个
TextBox控件的Text属性有什么问题吗?public string Name { get { return name.Text; } set { name.Text = value; } } -
似乎工作 Richard,想写一个答案吗?
标签: c# asp.net webforms web-controls