List<T>
次のような子コントロールを
返すメソッドがあります。
void GetAllControlsOfType<T>(List<T> lst, Control parent) where T:class
{
if (parent.GetType() == typeof(T))
lst.Add(parent as T);
foreach (Control ch in parent.Controls)
this.GetAllControlsOfType<T>(lst, ch);
}
しかし、私は次のように使用する必要があります。
List<WebControl> foo = new List<WebControl>();
GetAllControlsOfType<WebControl>(foo, this); //this = webpage instance
確かに、次のように呼び出すことができるメソッドを作成できる c# マジックがいくつかあります。
List<WebControl> foo = GetAllControlsOfType<WebControl>(this);