2011-09-06 6 views
0

표준 WPF 컨트롤에서 파생 된 두 개의 간단한 사용자 지정 컨트롤이 있습니다. 나는.컨트롤 상호 작용 질문

internal class CustomLabel : Label { ... } 

internal class CustomButton : Button { ... } 

는 (좋아, 사실은 내가 레이블과 버튼하지, WPF 툴킷에서 GridViewHeaderRowPresenter 및 데이터 그리드를 사용).

xaml에서 이들은 동일한 계층 구조 수준에 있습니다.

<Grid> 
    <CustomLabel /> 

    <CustomButton /> 
</Grid> 

CustomButton 컨트롤은 어떤 식 으로든 CustomLabel의 이벤트 (SizeChanged 이벤트)에 반응해야합니다. 이것을 구현하는 가장 좋은 방법은 무엇입니까?

지금까지 논리 트리를 탐색하여 CustomLabel의 이벤트 핸들러에서 CustomButton을 찾고 일부 속성을 변경하기로 결정했습니다. 더 좋은 방법이 있습니까?

참고 : .Net 3.5을 사용하므로 x : 참조 마크 업 확장자를 사용할 수 없습니다.

+0

예 시각적 트리 순회가 옵션입니다. –

답변

1

컨트롤 이름을 지정하고 코드에서이 이름을 사용하여 컨트롤 이름에 액세스 할 수 있습니다. XAML에서 독점적으로 수행하려는 경우 데이터 바인딩과이 방식을 사용하여 목표를 달성 할 수 있는지 여부를 고려하십시오.