사용자 컨트롤이 밖으로 코드를 분리 할 수있는 아주 좋은 방법입니다 당신은 단지 Window.xaml에 <MyControl/>
가 직접 테마 파일에 MyControl에 그런 식으로 스타일링을 적용하여 피할 수 메인 윈도우. decluttering 외에도 코드를 모듈화하고 코드 섹션에 제한된 인터페이스를 제공하여 유지 보수성을 향상시키고 스파게티 코드를 방지하는 등의 다른 이점도 제공합니다.
이외에도 DataTemplates도 유용 할 수 있습니다. 예를 들어, 입력해야 할 필드가 많고 모든 필드에 레이블이 있다고 가정합니다. 이 경우 두 개의 속성 (레이블 및 해당 필드 값에 대한 속성)으로 클래스를 만들 수 있습니다. 그런 다음 레이블을 TextBlock에 바인딩하고 해당 값을 TextBox에 바인딩하는 해당 클래스의 DataTemplate을 만들 수 있습니다. 모든 레이블이 정렬되도록하려면 Grid SharedSizeScope를 만들면됩니다. 그런 다음 해당 클래스의 ObservableCollection을 만들고 레이블 및 값으로 채우기를 채운 다음 ItemsControl의 ItemsSource를 해당 클래스로 설정할 수 있습니다. 이 초기 배관을 얻은 후에는 데이터 입력 폼을 WinForms에서보다 빠르게 생성 할 수 있습니다.
ResourceDictionaries를 살펴볼 것입니다. 나는 내가 바라 보는 조직의 어떤 형태가 있어야한다는 것을 알았다. 도와 주셔서 정말로 고맙습니다. – stevosaurus
추가 정보 링크가 죽었지 만 [여기] (http://web.archive.org/web/20100629015119/http://groups.google.com.au/group/wpf-disciples/web/wpf-and- xaml-coding-guidelines)을 통해 WayBackMachine에 있습니다. –