Привязка управления WPF к нескольким источникам (не традиционная многосвязная) - PullRequest
1 голос
/ 30 августа 2010

Я пытаюсь сделать магию привязки данных. У меня есть представление «Отправления», в котором перечислены отправления и предусмотрена возможность фильтрации и упорядочения в списке. Поле строки фильтра, Фильтры состояния доставки (флажки) и Радиопереключатели для заказа привязаны к свойствам в ViewModel. Я хочу добавить возможность сохранения состояния, и я решил сделать это, сохраняя состояния управления в документе XML. Ранее я делал это раньше без особых проблем, используя привязку данных для простого чтения / записи значений туда и обратно.

Тем не менее, теперь у меня есть недоумение. Мои элементы управления фильтрами в настоящее время привязаны к элементам в ViewModel. я могу написать код, который изменяет их привязку данных с XML на ViewModel при загрузке и наоборот, но это было бы грязно.

Есть ли механизм, который я мог бы использовать для достижения способности связывать два равных источника и обновлять их одновременно?

Ответы [ 2 ]

2 голосов
/ 30 августа 2010

Это звучит как забота о модели представления.

Почему бы не загрузить сохраненные значения в модель представления , и модель представления не решит, какие данные предоставить?

Тогда представление не должно быть связано с управлением данными.

1 голос
/ 30 августа 2010

Ни о чем я не знаю.

Мое мнение: я бы действительно не стал этого делать - если ваш datacontext является моделью представления, а модель представления имеет свойства для фильтра, вам почти наверняка следует сохранить и извлечь соответствующее состояние модели представления, чтобы сохранить состояние фильтров. , Попытка сохранить контрольное состояние, затем извлечь его, установить его и установить модель представления, основанную на новом контрольном состоянии, звучит как много работы и гораздо более подвержена ошибкам.

...