사용자 지정 DependencyProperty가있는 사용자 지정 UserControl이 있습니다. 이것을 사용하는 방법에 대한 더 나은 그림을 그리기 위해 UserControl은 마법사와 같은 컨트롤의 왼쪽 탐색 표시기입니다. 왼쪽 탐색 컨트롤은 마법사의 단계를 나타내는 각 컨트롤 안에 있습니다. 왼쪽 탐색 컨트롤 내부에서 다음과 비슷한 코드를 사용하여 몇 가지 변환기를 사용하여 가시성을 전환하고 여러 자식 컨트롤의 시각적 속성을 설정합니다. 아이템을 선택했는지 여부에 상관없이 내 StackPanel의 각 행의 전체 구조가 다르기 때문에 간단한 스타일 선택기 또는 스타일 선택 변환기를 사용할 수 없습니다.자식 컨트롤에서 부모 UserControl의 DependencyProperty에 바인딩하는 청결한 방법
이 코드는 내 컨트롤 전체에서 반복되어 하나의 사용자 지정 속성에 바인딩됩니다. 다음을 더 짧은 형식으로 만들거나이를 구현하는 더 깨끗한 방법이 있습니까?
<Polygon
Visibility="{Binding
RelativeSource={RelativeSource Mode=FindAncestor,
AncestorType=UserControl},
Path=Selected,
Converter={StaticResource myCustomConverter},
ConverterParameter='Expected String'}">
...
상위 뷰
는 자식 컨트롤 사용자 정의하는 하나의 속성을 제공 :<!-- Left Column -->
<views:LeftNavControl Selected="Item to Select..." />
이
미터 같은 것을 간다 (: 나는 그것을 테스트하지 않았기 때문에 의사 코드로 다음 사항을 고려 아니 프레임 워크, 방금 일부 VM을 기본 클래스와 헬퍼를 썼습니다),하지만 난 컨트롤에 아무것도 다른 사람을 위해 필요하지 않았기 때문에 나는 아직 VM에 의해이 컨트롤을지지하지 않았습니다. 이것은 분명히 논리적 인 방법입니다. 감사 – Rich