2009-05-29 4 views
3

코드 플렉스 MVVM Visual Studio template에있는 DelegateCommand을 사용하고 있습니다. 이 은 뷰가 자신의 ViewModel에서 명령을 실행할 수 있도록 매우 잘 작동합니다 ().DelegateCommand는 "첨부 된 동작"과 동일합니까?

나는 MVVM에서 "붙은 행동"을 사용해야한다고 읽었습니다. 내가 말할 수있는 한, "붙은 행동"은 DelegateCommand와 같은 유형의 패턴이지만, 명령이 없기 때문에 Silverlight에 의해 사용됩니다.

이 정확히입니까? 또는 DelegateCommand에 추가하여 "부착 된 행동"이 종류가 다르며 학습 가치가있는 것입니까?

답변

6

DelegateCommand (또는 거의 동일하지만 매개 변수를 허용하는 RelayCommand)는 ViewModel에서 명령을 쉽게 표시 할 수 있도록하는 ICommand 인터페이스의 간단한 구현입니다.

첨부 된 동작은 이벤트를 명령에 연결하는 방법입니다. 예를 들어 대부분의 WPF 컨트롤에는 Command 속성이 없으므로 일반적으로 이벤트에 반응하는 명령을 정의 할 수 없습니다. 첨부 된 비헤이비어를 사용하면 모든 컨트롤 이벤트를 ViewModel의 명령에 "바인딩"할 수 있습니다. Marlon Grech's implementation을 보니 가장 유연하게 보입니다.

관련 문제