2010-02-11 1 views
3

MVC C# 응용 프로그램을 작성하고 있습니다. masterPage를 사용하고 다른 페이지의 제목과 내용을 이라는 마스터 페이지에 contentPlaceholders에 넣습니다. MasterPage에서 MVC : C# : contentPlaceholder의 내용을 두 번 표시합니다.

는, I는 (a <H1> 태그)를 < 표제 > 태그 모두와 < > 본체 부에 기재된 TitleContent 원한다.

이상한 이유로 인해 페이지에서 동일한 contentPlaceholder를 두 번 사용할 수 없기 때문에이 작업을 수행 할 수 없습니다. 지금까지

, 나는 내가 TitleContent 자리 (예 : C# 코드)에 동적 콘텐츠 를 추가 시작할 때까지 잘 근무 <H1> 태그에 (FindControl("TitleContent").Controls[0] as LiteralControl).Text 을 사용하고있다.

이 콘텐츠를 두 번 표시하려면 어떻게해야합니까?

답변

0

표시 할 텍스트가 ViewData에 있거나 뷰가 바인딩 된 모델 인 경우 원하는만큼 여러 번 액세스하여 뷰/마스터 페이지의 모든 요소에 설정할 수 있습니다.

0

모델보기 클래스에 필요한 문자열을 저장할 수 있습니다. 그런 다음 위에서 언급 한 클래스 유형을 사용하여보기를 강력하게 형식화합니다. 마지막으로 내부 태그

<h1> <%=Model.PageName%></h1> 

<title><%=Model.PageName%></title> 

는 희망이 도움이합니다.

+0

답장을 보내 주셔서 감사합니다. 문제는 플러그인처럼 작동해야하는 일부 독립형 웹 응용 프로그램의 마스터 페이지를 만들고 있다는 것입니다. 나는 마스터 페이지에 대한 인터페이스를 가능한 한 간단하게하고 싶기 때문에 모듈은 views 디렉토리 아래에있는 파일에 놓기 만하면된다. (예를 들어 파일 외부에 코드를 넣지 않기를 바란다.) 기본적으로 모듈은 title과 contentplaceholder를 제공해야합니다. 웹 응용 프로그램이 이미 작성되었으므로 일종의 도구 상자에 모으려고합니다. –

+0

대답을 찾으면 여기에 적어주세요 :). –