2013-03-29 4 views
1

Я нахожусь в середине реализации контейнера UndoRedo для модели представления, содержащей вложенные свойства и ObservableCollection. Я использую PostSharp для обработки исключений в приложении и мысли о повторном использовании его для реализации отмены-повтор двигателя, как указано в статье: http://www.postsharp.net/aspects/examples/undoredoUndo Redo с использованием PostSharp для вложенного свойства или коллекций

Хотя выше статья для WindowsForms, которые имели обязательную силу ограничения, я сделал чтобы принять богатую привязанную платформу wpf, и она отлично работает для одиночных свойств.

Мне интересно, как расширить UndoableAttribute, чтобы позаботиться о вложенных свойствах и наборах. До сих пор мои попытки и навыки работы в Google оказались бесплодными. Любая идея или указатель на какую-то статью будут оценены.

ответ

0

Это действительно зависит от того, что вы после. Предоставление функциональности отмены на графиках объектов может быть довольно сложной задачей. Вам нужно будет уточнить, чего вы хотите достичь.

Как правило, вы можете обрабатывать все вложенные объекты и писать специальные коллекции для хранения всех изменений в каком-либо глобальном контейнере.

Мы работаем над предоставлением такой функциональности, как часть будущей версии библиотек PostSharp.Patterns - она ​​должна составлять до 3.1 или 3.2.

+0

thenks для ответа. У меня есть ViewModel, что список объектов, которые обслуживают пользовательский интерфейс. Я отказываюсь от отмены, чтобы заботиться о том, что какой-либо объект добавляется или удаляется из коллекции. Можете ли вы вести? – James