나는 ListBox와 3 개의 버튼이있는 DocumentListView.Xaml을 가지고 있습니다.WPF/MVVM : UserControl 뒤의 ViewModel이 아직 초기화되지 않은 상태에서 Button의 상태를 비활성화 하시겠습니까?
그 뒤에 UserControl은 3 개의 RelayCommands에 바인딩 된 3 개의 단추 및 해당 명령 속성이있는 DocumentListViewModel을 배치합니다.
AdministrationController, BillingController, ReportController와 같은 3 개의 컨트롤러가 있습니다.
모든 컨트롤러에는 고객 1 : N 주문 1 : N 문서와 같은 ObservableCollections가 있습니다.
한 명의 컨트롤러에서 나는 특별한 구속력이 있습니다. 내 DocumentListViewModel OrderViewModel (순서가로드/존재하지 않기 때문에) 부모 ViewModel에 의해 초기화되지 않은 다음 내 UserControl에 활성화 된 3 개의 단추가 있습니다. 사용자는 3 버튼을 눌러도 아무 일도 일어나지 않지만 여전히 매우 혼란스럽고 무엇보다도 내 사용자 인터페이스의 일관성이 사라졌습니다.
버튼 명령을 기본적으로 "사용 안 함"으로 설정할 수 있습니까?
단추 설정 IsEnabled 속성을 false로 설정하면 단추가 영구적으로 비활성화 상태로 유지되므로 도움이되지 않습니다. CanExecute TRUE를 설정하면 IsEnabled = true로 설정됩니다.
그리고 다른 속성 인 IsButtonEnabled를 소개하고 싶지 않습니다 ... 그 바보 같은 생각이 들었습니다. 왜냐하면 저의 버튼 논리 뒤에 winforms와 wpf가 있기 때문입니다. ICommand로 충분합니다.
스타일에 따라 IsEnabled 속성이 어떻게 TRUE로 설정되어 있습니까? – Elisabeth
트리거가 눌려지지 않을 때마다 정상적인 절차가 호출됩니다. 예. Command 속성이 설정되고 CanExecute가 true로 평가되면. – Goblin
작동! thats counts now! 감사합니다 고블린. – Elisabeth