C#/WPF

[C# - WPF] View Binding 자동 완성 방법, F12로 ViewModel 타고 가기

반나무 2024. 4. 28. 09:02

안녕하세요, 반나무입니다.

이미 많은 분들이 알고계시겠지만 View에서 F12를 눌러서 ViewModel로 타고 넘어가는 방법을 소개 해드리려고 합니다.

 

해당 방법은 정확히는 View에 DataContext를 연결하는 방법입니다.

 

기본적으로는 예시와 같은 코드가 있다고 할 때, Binding된 값에 F12를 누르면 아래와 같이 나옵니다.

F12를 누르면 Path로 들어옵니다.

 

그 이유는 Binding 프로퍼티만 치면 Path=가 생략되기 때문에 원래는 저 모양이라 그렇습니다.

 

 

코드를 아래 처럼 두줄 추가 해 줍니다.(내용은 이 글을 보시는 분들 마다 다 다릅니다)

 

  • Line 7 : 사용할 네임스페이스 작성
  • Line 8 : d:DataContxt를 해당 네임스페이스의 MainViewModel Class로 설정
    (이건 제 ViewModel 클래스 이름이 MainViewModel이라 그렇습니다.)

 xmlns:viewModel="clr-namespace:ViewToViewModel"
 d:DataContext="{d:DesignInstance Type=viewModel:MainViewModel, IsDesignTimeCreatable=False}"

 

이 방법을 사용하면 두가지 장점이 있습니다.

1. View에서 Binding을 자동 완성할 수 있습니다.

WPF 개발을 하다보면 대부분 ViewModel에서 기능들을 구현해놓고 마지막에 View에서 원하는 프로퍼티들을 바인딩하려고 합니다. 그럴때 자동완성이 가능해 편리합니다.

Binding 자동완성이 됩니다.

 

2. View에서 F12를 눌러 Binding된 해당 프로퍼티를 타고 갈 수 있습니다.

디버깅 시 또는 개발을 마치고 유지보수 중 해당 프로퍼티가 어떤 클래스 내부에 있는지 확인하기 너무 편해집니다.

 

F12를 눌렀을때 타고 들어갈 수 있습니다.

 

 

아직까지 사용하며 단점을 느껴본적은 없어 모든분들이 사용하시면 좋을거같다고 생각합니다.

반응형