2010-02-24 4 views
0

마스터 페이지에는 콘텐트 페이지에 특정한 단추를 포함해야하는 페이지 상단에 컨테이너가 있습니다. 콘텐츠 페이지에는 "만들기", "수정"등과 같은 버튼이 있습니다. 마스터 페이지의 컨테이너는 항상 맨 위에 있어야하지만 버튼은 결국 다른 내용으로 변경됩니다. 콘텐츠 페이지 기능을 마스터 페이지 중 하나에 바인딩 할 수있는 방법에 대한 아이디어가 있습니까? 현재 마스터 페이지에 패널이 있고 런타임 중에 컨텐츠 페이지에서 버튼을 첨부하지만 이벤트 핸들러가 연결되지 않고 페이지 재로드 만 렌더링됩니다. 왜 그런 일이 일어나는거야?콘텐츠 페이지에서 ASP.NET 마스터 페이지와 특정 이벤트 처리기를 바인딩하는 방법

도움 주셔서 감사합니다.

브란 코

답변

1

사용 그렇게 기술 : 당신이 컨트롤 IProducer 인터페이스를 구현하고 마스터 페이지 IConsumer 인터페이스를 구현합니다.

IProducer는 이벤트 (명령)를 생성합니다. 소비자가 이러한 이벤트를 처리합니다. 명령 이름 (작성, 수정 ...) 및 인수 (문자열)가있는 이벤트를 사용하고 있습니다. 소비자는 이러한 명령을 처리하고 뷰를 업데이트합니다 (모델 뷰 발표자 패턴 사용). 컨트롤은 IView도 구현할 수 있습니다. 예를 들어, ASP.NET MVC가 수행하는 코드가 있습니다. IView gererates 이벤트, Presenter는 모델을 처리하고 (비즈니스 계층 또는 데이터 계층) 무언가를 수행하고 뷰를 업데이트합니다.

행운.

0

가장 쉬운 방법은 (가장 유연하지는 않지만) 마스터 페이지에 상단 패널 안에 새로운 콘텐츠 자리 표시자를 추가하고 각 페이지에 필요한 스크립트 버튼과 함께 필요한 버튼을 제공하는 것입니다. 해당 장소 소유자의 콘텐츠 물론 페이지 별 단추와 일반적인 단추를 혼합하는 것이 약간 힘들지 만 페이지 별 컨트롤이 함께 그룹화되어 있어도 필요하지 않은 대부분의 시나리오에서는 다소 어려울 수 있습니다.

관련 문제