저는 실버 라이트에 익숙하지 않아 사용자 컨트롤 간의 통신에 대해이 문제를 겪고 있습니다. 다른 사용자 컨트롤의 일부 속성을 설정해야하는 버튼이있는 사용자 컨트롤이 있습니다. 예를 들어, IsEnabled 속성을 true 또는 false 또는 가시성으로 설정하는 등의 작업을 수행 할 수 있습니다. 실제로 같은 될 것이라고 하나 개의 솔루션을 알고Silverlight의 사용자 컨트롤 간의 통신
클래스 UserControl1을 : UserControl을
{
공개 된 UserControl2 UC2;
개인 무효를 Button1_Click (개체 송신자 RoutedEventArgs E)
{
uc2.IsEnabled = 거짓; // 또는 uc2.SomeMethod();
}
} 유사
이 UserControl2를 클래스에 간다, 다음 메인 페이지에 난 단지 추가 :
UserControl1.uc2 = UserControl2를;
내 질문에, 어떻게 이벤트 처리기를 통해이 작업을 수행 할 수 있습니까? 아니면 더 나은 해결책이 있습니까? 간단한 예가 환영받을 것입니다. 감사.
더 나은 시나리오를 설명해 주시겠습니까? – AbdouMoumen
@AbduoMoumen 물론입니다. 다른 사용자 컨트롤과 상호 작용해야하는 여러 단추 (예 : new, edit, delete ...)가있는 사용자 정의 컨트롤이 있습니다 (예 : 새를 클릭하면 텍스트 상자가있는 사용자 정의 컨트롤이 표시되고 다른 사용자 검색 표시 줄을 나타내는 컨트롤이 비활성화 된 경우 등). 그래서 기본적으로 사용자 컨트롤 사이에 일종의 상호 작용이 필요합니다. 한 사용자 정의 컨트롤에서 단추를 클릭하면 하나의 사용자 정의 컨트롤을 표시하거나 다른 컨트롤을 제거하거나 다른 사용자 컨트롤의 속성을 변경하려고합니다. –