У нас есть некоторый код, который предназначен для создания пары ключ / значение элементов управления на странице веб-форм ASP.NET и их значений. Мы используем коллекцию «Controls» и рекурсию для создания этой пары ключ / значение.
Единственная проблема заключается в том, что элементы управления ascx не возвращаются в коллекцию «Элементы управления». Вместо этого мы получаем управление на ascx.
Что-то похожее на следующий код:
protected override void OnLoad(EventArgs e)
{
GetControls(this);
}
protected void GetControls(System.Web.UI.Control ctl)
{
foreach (Control subCtl in ctl.Controls)
{
GetControls(subCtl);
string value;
if (GetValueFromControl(subCtl, out value))
{
_ControlValues.Add(subCtl.ClientID, value);
}
}
}
SubCtl никогда не является элементом управления ascx. Есть ли способ получить список элементов управления ascx на странице или, что еще лучше, другую коллекцию, содержащую оба типа?
Спасибо
Hans