Привязка WPF Control для нескольких источников (не традиционная Multibinding)
-
25-09-2019 - |
Вопрос
Я пытаюсь сделать несколько волшебных данных. У меня есть представление поставок, которые перечислены поставки и обеспечивают возможность фильтрации и заказа в списке. Струнная коробка фильтра, фильтры состояния доставки (флажки) и заказа Radiobuttons представляют собой посылку свойств в ViewModel. Я хочу добавить возможность сохранения состояния, и я решил сделать это, сохраняя состояния управления в документе XML. Ранее я сделал это раньше с небольшой проблемой, используя DATANDINGING, чтобы просто прочитать / писать значения взад и вперед.
Тем не менее, теперь у меня есть квананство. Мой фильтр элементы управления в данный момент входит в падкет входит в элементы в ViewModel. Я могу написать код, который меняет свои данные о данных от XML в ViewModel на нагрузке и наоборот, но это будет грязно.
Есть ли механизм, который я могу использовать для достижения возможности связывания с двумя равными источниками, и они одновременно обновляются?
Решение
Это звучит как забота о модели зрения.
Почему бы не загрузить сохраненные значения в модель просмотра, И имеют возможность представления о том, какие данные выставляют?
Тогда представление не должно касаться управляющих данных.
Другие советы
Никто, что я знаю.
Мое мнение: я действительно все равно ничего не сделаю - если ваш dataContext представляет собой viewmodel, а viewmodel обладает свойствами для фильтра, вы почти наверняка должны быть сохраняться и извлекать соответствующее состояние ViewModel, чтобы сохранить состояние фильтров. Попытка сохранить ControlState, затем извлеките его, установите его и установите ViewModel на основе нового элемента управления звуками, как намного больше работы и гораздо более склонны к ошибкам.