У меня есть элемент управления входами, и он вложен в глубину 2 в заголовке управления i.e Страница -> Управление заголовком -> Контроль входа. Я не могу получить ссылку на элемент управления на странице с помощью FindControl. Я хочу, чтобы иметь возможность установить видимое свойство элемента управления, какASP.NET Как получить доступ к глубоко вложенному элементу управления пользователя на родительской странице
if (_loginControl != null)
_loginControl.Visible = false;
Я закончил с использованием рекурсивного метода FindControl найти вложенное управление.
public static Control FindControlRecursive(Control root, string id)
{
if (root.ID == id)
{
return root;
}
foreach (Control c in root.Controls)
{
Control t = FindControlRecursive(c, id);
if (t != null)
{
return t;
}
}
return null;
}
я не уверен, что вы имеете в виду, когда вы говорите, тест, если он существует? Вы добавляете его динамически на страницу? Если вы объявили его в своей разметке, он должен иметь идентификатор и 'runat =" server ", чтобы вы могли просто ссылаться на него по идентификатору, и он всегда должен быть заполнен. – Josh