Доступ к UpdatePanel внутри представления из другого UpdatePanel ASP.Net - PullRequest
1 голос
/ 02 февраля 2009

У меня есть две панели обновления

  • UpdatePanel1 содержит кнопку
  • UpdatePanel2 находится в представлении Multiview1:

.

<Multiview>
  <View1>
    <UpdatePanel2>
    </UpdatePanel2>
  </View1>
</Multiview>

Multiview ActiveIndex имеет значение -1. ​​

Теперь я прикрепил AsyncPostBackTrigger к UpdatePanel2, который связан с нажатием кнопки.

Я хочу показать View1, когда нажимаю кнопку в UpdatePanel1.

1 Ответ

1 голос
/ 17 февраля 2009

Вам нужно разместить панель обновлений вокруг MultiView, а не внутри View1:

<UpdatePanel2><MultiView><View1></View1></MultiView></UpdatePanel2>

UpdatePanel будет отображаться на странице как div или span (div по умолчанию).

Когда вы выполняете обратный вызов (например, когда вы нажимаете кнопку внутри UpdatePanel), ASP.NET отправляет браузеру сообщение о том, как обновить содержимое элементов div, представляющих ваши UpdatePanels. Это сообщение получено и обработано в javascript.

Если вы не показываете View1 при первом посещении страницы, тогда UpdatePanel2 вообще не будет отображаться. Поэтому, когда нажатие вашей кнопки вызывает обратный вызов, на отображаемой странице нет div, чтобы javascript мог изменить содержимое.

...