Есть ли способ в XAML вызывать функцию при изменении свойства TreeViewItem IsExpanded?wpf TreeView - Как вызвать функцию при изменении свойства IsExpanded
Я считаю, что не очень хорошей альтернативой было бы перебрать все элементы TreeViewItems и сделать item.IsExpanded + = вызов обработчика, если я правильно понял вещи.
Или я мог проверить наличие кликов на элементе расширения, я думаю.
Что я делаю, это сохранение состояния разворачивания/срыва дерева. Пожалуйста, ответьте на первый вопрос, прежде чем предлагать альтернативные способы сохранить это только для того, чтобы направить меня на свойства и xaml.
Это не сработает для меня, поскольку мне нужно выполнить код, когда изменение происходит. Однако да, это хорошее решение. – Mark
Затем просто введите код в ViewModel для набора IsExpanded. public bool IsExpanded {get {return _IsExpanded; } set {_IsExpanded = значение; CallSomeOtherFunc(); }} Конечно, я пропустил код для INotifyPropertyChanged. –
Именно так я и сделал бы это. Нет необходимости в коде. Если вы используете что-то вроде caliburn.micro, все будет намного проще. –