У меня есть некоторый код, который изменяет значение, к которому привязаны несколько элементов управления в других панелях обновления. Когда этот обработчик событий срабатывает, я бы хотел, чтобы другие панели обновлений также обновлялись, чтобы они могли перепривязываться.
Возможно ли это?
Редактировать:
Чтобы уточнить, у меня есть панель обновлений в одном пользовательском элементе управления, остальные панели обновлений находятся в других пользовательских элементах управления, поэтому они не могут видеть друг друга, пока я не выставлю некоторые пользовательские свойства и не использую findControl и т. Д. И т. Д. ...
Редактировать снова:
Вот что я придумал:
public void Update()
{
recursiveUpdate(this);
}
private void recursiveUpdate(Control control)
{
foreach (Control c in control.Controls)
{
if (c is UpdatePanel)
{
((UpdatePanel)c).Update();
}
if (c.HasControls())
{
recursiveUpdate(c);
}
}
}
У меня было 3 основных пользовательских элемента управления, которые были полны панелей обновления, эти элементы управления были видны на главной странице, поэтому я добавил туда метод обновления, который назывался «Обновление» для этих трех элементов.
В моем триггерном элементе управления я просто привел this.Page на текущую страницу и вызвал Update.
Edit:
AARRGGGG!
В то время как панели обновления обновляются, они не вызывают Page_Load в их элементах управления ... Что мне теперь делать!