ICommand는 WPF 컨트롤의 Command 속성에 Binding 하기 위해 사용합니다. WPF 프로젝트가 아니어도 사용할 수 있지만 WPF가 아니라면 굳이 사용할 필요가 없습니다. ICommand는 RelayCommand라는 클래스로 구현하여 사용하는 게 일반적인데 잘 사용하려면 약간의 이해가 필요합니다. ✅ ICommand와 RelayCommand ICommand가 언제 등장했는지 알 수는 없지만 View의 사용자 명령(이벤트)을 ViewModel에 전달하기 위해 만들어진 게 아닐까 생각합니다. 다시 말해 WPF의 MVVM 패턴을 위해 존재하는 거죠. Codebehind를 사용한다면 ICommand 역시 사용하지 않아도 됩니다. WPF의 ICommand ICommand는 인터페이스이므로 구현해야합..
RelayCommand
MVVM 패턴에서는 Command 속성에 Binding을 해야만 클릭 시 ViewModel로 이벤트가 전달됩니다. Command 속성은 ICommand Type으로 ViewModel 역시 ICommand Type의 객체를 생성하여 Binding 합니다. Button을 예를 들어 코드를 작성하겠습니다. ✅ Command Binding View 버튼을 생성합니다. Command 속성에 ButtonCommand를 Binding 합니다. ViewModel private RelayCommand _buttonCommand; public RelayCommand ButtonCommand { get { if (_buttonCommand == null) _buttonCommand = new RelayCommand(OnBu..