Я создал 2 элемента управления для управления объектом данных: один для просмотра и другой для редактирования.
На одной странице я загружаю «представление» UserControl
и передаю ему данные следующим образом:
ViewControl control = (ViewControl)LoadControl("ViewControl.ascx");
control.dataToView = dataObject;
this.container.Controls.Add(control);
Все нормально, и внутри элемента управления я могу получить эти данные и отобразить их.
Теперь я пытаюсь следовать аналогичному подходу для редактирования. Для этого у меня есть другой пользовательский элемент управления (с некоторыми текстовыми полями для редактирования), в который я передаю исходные данные так же, как и для представления:
EditControl control = (EditControl)LoadControl("EditControl.ascx");
control.dataToEdit = dataObject;
this.container.Controls.Add(control);
Что тоже отлично работает.
Теперь проблема заключается в получении этих данных. Когда пользователь нажимает кнопку, мне нужно выбрать данные, которые были отредактированы, и что-то с ними делать.
Дело в том, что поскольку элементы управления добавляются программно, измененные пользователем данные, кажется, нигде не доступны.
Есть ли решение для этого? Или этот способ держать вещи отделенными и, возможно, повторно используемыми невозможен?
Заранее спасибо.