Имея представление унаследованное от Catel's DataWindow
базового класса с DataWindowMode.OkCancelApply
. Теперь я пытаюсь отключить кнопки OK/Apply (или даже Only Apply) и включить их, когда какое-либо свойство модели было изменено.Отключить/Включить кнопки DataWindow
После расследования я обнаружил, что ValidateData()
переопределяет то, что мне нужно. Все еще не могу понять, как проверить неизмененные свойства модели с помощью Catel.
благодаря Герт! Я также проверил эти страницы. Для моей цели требуется отслеживать состояние IsDirty модели. Если для него установлено значение true, тогда кнопка «Применить» в представлении должна быть включена, в противном случае отключена. – IUnknown
А, я не думаю, что для этого есть реальное решение. Почему вы не можете держать его включенным все время? –
Хотел бы я, но в соответствии с требованиями приложения. Простейший теоретический способ реализовать это переопределить 'ValidateData()' и просто вернуть значение 'IsDirty' базовой модели. Практически это непросто, потому что: 1. Просмотр не может получить доступ к Модели, 2) В случае, если я получу модель с помощью 'ServiceLocator', ее' IsDirty' по какой-то причине всегда 'истина' – IUnknown