C# 如何在注册控件的同一页面中的单独用户控件中查找该控件
我有两个用户控件,其中一个有一个文本框,我需要从同一页面中注册的第二个用户控件中检索它的值。我该怎么做?我知道下面这句话是错的。。但我记得是这样的C# 如何在注册控件的同一页面中的单独用户控件中查找该控件,c#,asp.net,web-user-controls,C#,Asp.net,Web User Controls,我有两个用户控件,其中一个有一个文本框,我需要从同一页面中注册的第二个用户控件中检索它的值。我该怎么做?我知道下面这句话是错的。。但我记得是这样的 TextBox myText = (TextBox)FindControl["mycontrol"] as TextBox; 你的代码应该可以工作,除非你有太多的强制转换 TextBox myText = FindControl["mycontrol"] as TextBox; 它返回一个控件,该控件是的基类,因此只要找到的控件是一个文本框,此强
TextBox myText = (TextBox)FindControl["mycontrol"] as TextBox;
你的代码应该可以工作,除非你有太多的强制转换
TextBox myText = FindControl["mycontrol"] as TextBox;
它返回一个
控件
,该控件是的基类,因此只要找到的控件是一个文本框,此强制转换就应该工作您拥有的代码应该工作,但强制转换过多除外
TextBox myText = FindControl["mycontrol"] as TextBox;
它返回一个
控件
,该控件是的基类,因此只要找到的控件是一个文本框,如果您需要从第一个控件访问第二个控件的值,则此转换应该可以工作
var textBox = this.Page.FindControl("SecondUserControl")
.FindControl("tbCardNumber") as TextBox;
其中SecondUserControl是页面中给定的id,tbCardNumber是为第二个控件中的文本框给定的id
如果您试图从页面访问文本框
var textBox = SecondUserControl1.FindControl("SecondUserControl")
.FindControl("tbCardNumber") as TextBox;
其中SecondUserControl1是控件的ID,您可以在代码隐藏中访问它
但是,可以通过属性公开文本框的值
public string TextBoxValue
{
get
{
return tbCardNumber.Text;
}
}
但是,如果需要通过另一个用户控件访问FindControl方法,则仍然需要FindControl方法
var textBox = this.Page.FindControl("SecondUserControl")
.FindControl("tbCardNumber") as TextBox;
其中SecondUserControl是页面中给定的id,tbCardNumber是为第二个控件中的文本框给定的id
如果您试图从页面访问文本框
var textBox = SecondUserControl1.FindControl("SecondUserControl")
.FindControl("tbCardNumber") as TextBox;
其中SecondUserControl1是控件的ID,您可以在代码隐藏中访问它
但是,可以通过属性公开文本框的值
public string TextBoxValue
{
get
{
return tbCardNumber.Text;
}
}
但如果您通过另一个用户控件访问FindControl方法,则仍然需要该方法