ASP .NET UpdatePanel в динамически загружаемом элементе управления - PullRequest
2 голосов
/ 17 февраля 2011

В настоящее время у нас есть панель UpdatePanel, содержащая следующую панель:

<asp:UpdatePanel ID="updatepanel" runat="server" UpdateMode="Conditional">
        <ContentTemplate>
            <asp:Panel ID="panel" runat="server">
            </asp:Panel>
        </ContentTemplate>
    </asp:UpdatePanel>

Затем мы динамически загружаем пользовательский элемент управления с помощью LoadControl () в Panel. Чтобы усложнить ситуацию, пользовательский элемент управления содержит свою собственную UpdatePanel.

Проблема, с которой я сталкиваюсь на данный момент, заключается в следующем: как обновить внутреннюю UpdatePanel, не обновляя внешнюю UpdatePanel? UpdateMode установлен на Условный на обоих. Заранее большое спасибо за помощь!

1 Ответ

0 голосов
/ 17 февраля 2011

Вы пробовали установить ChildrenAsTriggers=false для родительской панели обновления?

http://www.asp.net/ajax/tutorials/understanding-asp-net-ajax-updatepanel-triggers

Автоматическое включение дочернего триггера также будет отключен (так что ребенок элементы управления, которые создают постбэки, не автоматически запускать частичные рендеры) установив ChildrenAsTriggers свойство ложно. Это позволяет вам наибольшая гибкость в назначении какие конкретные элементы управления могут вызывать рендеринг страницы, и рекомендуется, так что разработчик включит отвечать на событие, а не обработка любых событий, которые могут возникнуть.

Обратите внимание, что когда элемент управления UpdatePanel вложены, когда установлен UpdateMode Условно, если ребенок UpdatePanel срабатывает, но родителя нет, то только ребенок UpdatePanel обновится. Однако если родительская UpdatePanel обновляется, тогда дочерняя UpdatePanel также будет освежиться.

...