我如何为这样的事情写一堂课
示例:我有form
一个面板。该面板有一个选项卡式控件。在该选项卡式控件中有一个textbox
. 如果我通过form
作为开始控件和“textbox1”[名称TextBox
],该类将texbox
控件作为控件返回。这是使用 c#、asp.net。
因此,在表单加载事件中,我应该能够按如下方式进行搜索:
Control txtCtrl = Search.FindControl(“textbox1”, this);
可能是这样的:
class Search
{
public static TextBox FindControl(string controlToFind, Page page)
{
//find your text box
}
}
正如@i4v 提到的,一个类不返回任何内容,但您可以添加一个返回某些内容的函数。话虽如此,这似乎是一个奇怪的要求。你能解释一下你想要做什么吗?
此代码可能会对您有所帮助。parentControl
是Textbox
您正在寻找的容器。
public TextBox FindTextbox(string name)
{
foreach (Control item in parentControl.Children) //based on parent type it my be .Childern, .Items , ...
{
if (item is TextBox)
{
TextBox temp = item as TextBox;
if (temp.Name == name)
{
return temp;
}
}
}
}
您可以通过调用接收要查找的控件的 id 和要搜索的控件的方法来使其更简洁。就像是:
public class ControlUtils
{
public static Control FindControl(string idToFind, Control mainControl)
{
//Recursively search for the control?
}
}