Я работал с MVVM и задавался вопросом, как использовать ObservableCollection для привязки к ItemsSource в TwoWay?MVVM ObservableCollection Bind TwoWay
Например, у меня есть пользовательский пользовательский чертежный пользовательский интерфейс под названием SmartDraw, в котором ItemsSource ссылается на список пользовательской графики и привязан к Graphics ObservableCollection в Model View.
Если я добавлю CustomGraphic в модель представления, ItemSource в SmartDraw будет знать, что есть добавление CustomGraphic, а затем выполнять некоторые другие вызовы функций. Это нормально.
Однако SmartDraw также является холстом, который позволяет пользователю рисовать графику на нем с помощью мыши. Количество CustomGraphic изменится в соответствии с чертежом пользователя. Итак, как я могу узнать, что ObservableCollection изменен пользовательским интерфейсом (SmartDraw)?
Вот мой код:
ViewModel:
public ObservableCollection<CustomGraphic> Graphics { get; set; }
Спасибо так много.
Не могли бы вы добавить дополнительную информацию об User Control. Неясно, есть ли события, которые позволяют вам отслеживать, когда элемент CustomGraphic добавлен из-за действия пользователя. – AxelEckenberger
В двухстороннем связывании ObservableCollection <>, как я могу узнать, что коллекция изменена в ViewModel? – user1184598
см. Anser ... однако я не уверен, что это то, о чем вы просите. – AxelEckenberger