특히 해당 마스터 페이지를 사용하는 콘텐츠 페이지의 코드 비하인드(C#)에서 마스터 페이지의 본문
태그에 배경색
스타일을 추가하고 싶습니다.
마스터 페이지가 콘텐츠 페이지의 테마와 일치하도록 로드되는 콘텐츠 페이지에 따라 마스터 페이지의 색상을 다르게 만들어야 하는 콘텐츠 페이지가 여러 개 있습니다.
아래에 해결책이 있습니다:
다음과 같은 것을 찾고 있습니다:
Master.Attributes.Add("style", "background-color: 2e6095");
콘텐츠 페이지의 페이지 로드 함수 내부에 있습니다. 하지만 위의 줄이 작동하도록 할 수 없습니다. 페이지의 본문
태그의 배경색
만 변경하면 됩니다.
특정 사례에 대해 제가 할 일은 다음과 같습니다:
i. 본문을 서버 측 컨트롤로 정의합니다.
<body runat="server" id="masterpageBody">
ii. 콘텐츠 aspx 페이지에서 마스터 페이지를 레지스터에 등록합니다:
<% MasterPageFile="..." %>
iii. 이제 콘텐츠 페이지에서 다음과 같이 간단히 사용할 수 있습니다.
Master.FindControl("masterpageBody")
를 클릭하고 컨트롤에 액세스할 수 있습니다. 이제 원하는 속성/스타일을 변경할 수 있습니다!
이것이 제가 생각해낸 것입니다:
페이지 로드 함수에서:
HtmlGenericControl body = (HtmlGenericControl)Master.FindControl("default_body");
body.Style.Add(HtmlTextWriterStyle.BackgroundColor, "#2E6095");
Where
default_body = 본문 태그의 아이디입니다.