2011-03-10 3 views
3

MVP 패턴을 따르는 Winforms MDI 응용 프로그램을 디자인하고 있는데, 응용 프로그램의 다른 부분 간의 통신과 관련된 몇 가지 문제가 있습니다. 여기여러 MVP 발표자 : 정보를주고 받고 공유하는 방법은 무엇입니까?

본 출원의 간단한 그림은 : ​​ 1 -On ㄱ 도면 성분, 오른쪽 "속성"폼 -3- 중간에 2- 트리 뷰 왼쪽. 이 세 부분은 MVP 트라이어드로 관리됩니다 (실제로는 모델이 모든 트라이어드에 공통입니다).

트 리뷰의 노드를 클릭하면 해당하는 객체의 도면이 표시됩니다. 그리기 구성 요소를 선택하고이 선택된 개체에 해당하는 일부 속성을 속성 폼에서보고 싶습니다.

내 기본적인 질문 : a) "선택한 개체"정보를 저장할 위치? b) "선택한 객체"가 변경된 도면 컴포넌트 및 특성 양식을 경고하는 방법?

나는 몇 가지 해결책을 상상하기 시작했지만 나는 꽤 불행합니다.

"선택 개체"를 모델에 넣고 관찰자 동기화를 수행하지 않습니다. "선택한 객체가"

그래서 내가 트 리뷰 발표자에 "선택한 개체"를 넣으면, 내가 발표자 이 정보를 저장하는 것입니다 상상 모델에 속하지 않는, 그것은 구성 요소를 그리기 위해이 두 발표자 나에게 보인다 Property form 용 Presenter는이 정보를 검색하기 위해 treeview 발표자에 대한 참조를 보유해야합니다.

발표자간에 커플 링이 생겨서 좋지 않습니다.

그래서 다른 아이디어 나 의견을 찾고 있습니다. 시간 내 줘서 고마워. D

난 당신의 코드가 내장되어 있지만 Retlang를 사용할 수있을 수 있습니다 방법을 정확하게 모르는 : 모든

답변

0

먼저, 늦은 응답 죄송합니다 :) 완료 물건을 많이했다. 그러면 메시지의 ID 목록을 쉽게 전달하고 원하는 메시지를 처리 ​​할 수 ​​있습니다.

또한 1 년 전에 어떻게 문제를 해결할 수 있었는지 들어 볼 수 있습니다.

관련 문제