ASP.NET выполняет действие после того, как ребенок контролирует пакет управления

StackOverflow https://stackoverflow.com/questions/3499175

Вопрос

У меня есть USERCONTROL, который действует как контейнер для удержания большего пользовательских ресурсов внутри него.

Мне нужно выполнить определенные проверки доступа, как только все элементы управления дочерним доступом имеют входящий в паспорт.

Я надеялся, что смогу присоединиться к мероприятию usercontrol.datuound, но, похоже, нет.

Какие еще варианты я должен сделать что-то на родительском usercontrol после того, как другие Usercontrols имеют вход в паспорт. Я предполагаю, что я должен получить контроль над ребенком, чтобы уведомить родителя, у них есть входящий в падкет, и родитель понадобится отслеживать, у которых есть входной вход, и которые не имеют и, когда все они имеют вход в банк.

Это было полезно?

Решение

Вам не нужно получать элементы управления ребенка, чтобы уведомить родителя. Посмотрите Страница ASP.NET: жизненный цикл. Отказ Вам необходимо поставить код в управлении пользователем контейнера в событии PRERENDER. Это выполняется после событий обратной связи.

Другие советы

На основе События жизненного цикла Asp.net Статья Я использовал это:

protected void Page_PreRenderComplete(object sender, EventArgs e)
{
  if (!IsPostBack) //only at 1st load
    UpdateSelection();
}

protected void UpdateSelection()
{
  UpdateSelection(listItems.SelectedValue);
}

protected void listItems_SelectedIndexChanged(object sender, EventArgs e)
{
  UpdateSelection();
}

В моем случае обновления были загружаются данные XML из файла, выбранного при раскрывающемся списке (который при запуске указывает на индекс 0) и необходимы некоторые флажки на странице, чтобы сначала были получены свои элементы из других XML-файлов, чтобы они позволили бы Код для проверки элементов на них на основе данных XML

С тех пор в UPDUSELECTORECTS просто вызывается на выделенном событии OptedIndexChanged INSExChanged (те, кто поступил в PrerenderComplete, я игнорирую их, чтобы избежать выполнения обновлений дважды)

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top