RoleViewModel 개체 모음에 바인딩 된 DataForm
이 있습니다. MVVMLight의 EventToCommand
동작을 이벤트 (DataForm
)에 바인딩하여 역할을 편집 할 때 내 ViewModel에 알립니다.MVVM Light EventToCommand 및 Silverlight DataForm - EventArgs 및 사용자 지정 CommandParameter가 필요합니다. 가능한?
이제 사용자가 역할을 편집하고 '확인', '취소'를 클릭하거나 간단히 이동할 수 있습니다. 이 정보는 DataFormEditEndedEventArgs
에있는 DataFormEditAction
속성에 있습니다 (OK는 DataFormEditAction.Commit
이고 다른 것은 DataFormEditAction.Cancel
임).
문제
내가PassEventArgsToCommand
을 선택 여부를 명령
RelayCommand<DataFormEditEndedEventArgs>
의 서명을 선택해야한다는 것입니다 아니면 서명
RelayCommand<RoleViewModel>
을, 행동의
CommandParameter
에
DataForm
의
CurrentItem
을 결합한다.
모두이 필요합니다.
사용자가 편집을 취소했는지 여부를 알기 위해서는 EventArgs
이 필요하며 취소하지 않은 경우 데이터베이스에 다시 저장하려면 새 역할이 필요합니다.
누구에게 영리한 제안이 있습니까? 내 손을 더럽힐 수 있고 두 가지 매개 변수를 사용하여 두 번째 동작을 만들 수 있다고 생각하지만 좀 더 우아한 해결책이 있다면 오히려하지 않을 것입니다.
도움을 주시면 감사하겠습니다.
미리 감사드립니다.
나는 누군가가 이것을 여러 해 동안 기다리고 있었다. 이것이 내가 끝까지 취한 접근 방식이며, 물론 올바른 방법입니다. 언젠가는 모든 것이 못처럼 보입니다. :-) – Stimul8d