【发布时间】:2011-07-13 00:16:08
【问题描述】:
我有一个 C# 类,我想从中访问包含在 TextBox 中的字符串。 TextBox 在 .ascx 文件中定义。我应该在类中放置哪些标题才能访问此TextBox 字符串?一个小例子将不胜感激,因为我是 ASP.NET 的新手。提前致谢。
【问题讨论】:
标签: c# asp.net textbox visibility ascx
我有一个 C# 类,我想从中访问包含在 TextBox 中的字符串。 TextBox 在 .ascx 文件中定义。我应该在类中放置哪些标题才能访问此TextBox 字符串?一个小例子将不胜感激,因为我是 ASP.NET 的新手。提前致谢。
【问题讨论】:
标签: c# asp.net textbox visibility ascx
假设 MyUserControl.ascx 继承 MyUserControl.cs,您可以定义一个公开 TextBox 控件值的公共属性。例如:
public class MyUserControl : System.Web.UI.UserControl {
public string MyTextBoxValue()
{
get
{
return MyTextBoxControl.Text;
}
}
}
然后,您在其他类(您试图从中访问 TextBox 的值)中所要做的就是获取对 MyUserControl 用户控件实例的引用,并且您应该能够访问您的自定义属性:
string value = myUserControl.MyTextBoxValue();
【讨论】:
这个类应该是 .ascx 文件的“代码隐藏”,还是它自己的类?
如果是前者,你是如何构建它的?基本上,.ascx 文件需要在其标头中“继承”此类,并且该类本身需要扩展UserControl。有样品和资料here。
如果是后者,类不应该能够访问用户控件上的页面元素。班级做什么?基本上,类需要的任何值都应该提供给它,或者在构建类的实例时作为构造函数参数,或者作为在类上设置的属性,或者在调用类的方法时作为方法参数。
您能否分享一些代码并描述您希望实现的功能?
【讨论】: