如何在注册控件的同一页面中的单独用户控件中查找控件
本文关键字:控件 单独 查找 用户 注册 一页 | 更新日期: 2023-09-27 18:30:00
我有两个用户控件,其中一个控件中有一个文本框,我需要从同一页面中注册的第二个用户控件中检索其值。我该怎么做?我知道下面这行写错了。。但我记得是这样的。
TextBox myText = (TextBox)FindControl["mycontrol"] as TextBox;
如果您需要从第一个控件访问第二个控件的值
var textBox = this.Page.FindControl("SecondUserControl")
.FindControl("tbCardNumber") as TextBox;
其中SecondUserControl是页面中给定的id,tbCardNumber为第二个控件中的TextBox给定的id
如果您尝试从页面访问TextBox
var textBox = SecondUserControl1.FindControl("SecondUserControl")
.FindControl("tbCardNumber") as TextBox;
其中SecondUserControl1是控件的ID,您可以在代码隐藏中访问它。
但是,您可以通过属性公开文本框的值
public string TextBoxValue
{
get
{
return tbCardNumber.Text;
}
}
但是,如果您通过另一个用户控制访问FindControl方法,您仍然需要它
您所拥有的代码应该可以工作,除非您有太多的转换
TextBox myText = FindControl["mycontrol"] as TextBox;
关于FindControl的MSDN文档,它返回一个Control
,这是Textbox的基类,所以只要找到的控件是一个文本框