Обновить Silverlight Datagrid после ответа с сервера

Я получил сетку данных в Silverlight. я бы предпочел

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

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

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

Я понял, что могу использовать класс WebClient для вызова сервера в свойстве set-объекта (~ cells), но мне кажется, что я делаю что-то принципиально неправильное, поскольку:

  • Я не знаю в свойстве set объекта, какая сетка данных активировала свойство set

  • и поскольку я не знаю, что я не смогу выяснить, на какой datagrid (и какую ячейку в datagrid) отправить ответ (т.е. было ли сообщение успешным или неудачным).

Я также пытался наблюдать некоторые события в сетке данных (BeginningEdit, PreparingCellForEdit, SelectionChanged, CurrentCellChanged), но ни один из них не дает мне нового значения редактируемой ячейки.

Может ли кто-нибудь указать мне правильное направление решения этих проблем?


person finnsson    schedule 21.12.2008    source источник


Ответы (1)


используйте DataBinding. Свяжите коллекцию типа ObservableCollection (где T - ваш тип объекта) и, когда вы вернетесь из вызова веб-клиента, заполните эту коллекцию. Поскольку его можно наблюдать, сетка данных будет видеть новые данные.

person Shawn Wildermuth    schedule 27.12.2008