Не удалось загрузить состояние просмотра. Дерево элементов управления, в которое загружается состояние просмотра, должно соответствовать дереву элементов управления, которое использовалось для сохранения состояния просмотра

Сейчас я работаю над динамическим ядром для нескольких веб-проектов. У него есть ядро, которое использует древовидное представление и меню. А затем для каждого конкретного проекта он загружает несколько разных wuc в основной контент. В одних бизнес-проектах используются ВУС, связанные с бизнесом, в других - другие. Так что диапазон вуков действительно велик.

Теперь к моей проблеме: всякий раз, когда пользователь нажимает элемент меню или элемент дерева, он загружает wuc в основной контент, связанный с этим объектом.

Но у меня есть некоторые ошибки состояния просмотра, и я смотрел вокруг в течение 2 дней, и ни одно из объясненных решений не работает для моего проекта.

У всего моего wuc должно быть включено состояние просмотра.

Цикл is ->

Страница (Control A) выполняет обратную передачу с переменной для изменения элемента управления на ControlB в wucPanel (UpdatePanel). OnLoad LoadRequested Wuc.

Текущий код:

protected void Load_Page(object sender, EventArgs e)
{
//Code to decide which wuc to load.
 UserControl wucc = (UserControl)Page.LoadControl(sFilePath);        
 ParentControl.ContentTemplateContainer.Controls.Add(wucc);
}

Я пробовал несколько исправлений, таких как добавление разных идентификаторов в wuc, но это либо отключает внутренние функции управления, такие как обработчики и т. Д., Либо генерирует ту же ошибку состояния просмотра.

Одно. Решение, которое я нашел, заключалось в том, чтобы загрузить ControlA, а затем просто удалить его, а затем загрузить ControlB. Но это отключило скрипты для моего стороннего контроллера (Telerik).

Я также читал о наличии разных PlaceHolders для каждого типа, но, поскольку я ожидаю иметь до 50 различных Controls, я не думаю, что это поможет мне.

И переход от Page_Load -> Page_Init генерировал ту же ошибку.

Ошибка:

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

8
задан Cœur 27 August 2017 в 01:24
поделиться