ObjectDataSource и FormView: как добавить поведение редактирования пользовательского интерфейса из бизнес-уровня - PullRequest
0 голосов
/ 03 ноября 2010

Я использую ObjectDataSource и FormView.

В FormView у меня есть набор элементов управления.Когда FormView находится в редакции, у меня есть, в частности, ComboBox и TextBox, которые связаны следующим образом: когда ComboBox принимает некоторые специальные значения, TextBox должен быть только для чтения или нет.

На данный момент я получаю такое поведение следующим образом: ComboBox запускает обратную передачу при изменении выбранного элемента, а в «OnPreRender» моей страницы я получаю значение ComboBox и обновляю свойство ReadonlyTextBox соответственно.

Что мне не нравится в этом методе, так это то, что я не использую мою объектную модель, которая используется ObjectDataSource.Проблема в том, что когда FormView находится в редакции, кажется, нет способа получить экземпляр редактируемого объекта.DataItem имеет значение null, и я не нашел способа автоматически создать новый объект из значений в элементах управления, чтобы передать его на мой бизнес-уровень.Конечно, я мог бы сделать всю работу сам, получив явно все значения в элементах управления, но это нехорошо.

Кто-нибудь когда-нибудь встречал такой сценарий?Любые идеи о том, как получить чистый дизайн?

1 Ответ

0 голосов
/ 03 ноября 2010

Как насчет использования DataItemIndex или DataKey? Я бы, вероятно, использовал DataKey, а затем использовал бизнес-метод для поиска объекта для ключа.

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