2012-06-19 3 views
1

패널과 같이 내용을 래핑 할 수있는 ascx 컨트롤을 만들려고합니다. 내가 뭘 좋아하는지 알 겠어 -"ascx"사용자 컨트롤이 컨텐츠를 래핑 할 수 있습니까?

나는 웹 양식을 작성한 이래로 오랜 시간이 걸렸다. 완전히 사용자 정의 컨트롤을 작성할 수 있지만 가능한 경우 내 애플 리케이션에 많은 장점이 있습니다.

답변

3

템플릿 컨트롤이라고합니다. MSDN에서 인용 How to: Create Templated ASP.NET User Controls

(위의 링크) :

  1. 의 .ascx 파일에서, 추가

    은 다음이가 모두 C#으로 수행하고 VB.Net하는 방법을 설명하는 간단한 튜토리얼입니다 ASP.NET PlaceHolder 컨트롤은 템플릿을 표시 할 위치를 지정합니다.

  2. 사용자 정의 컨트롤의 코드에서 ITemplate 형식의 속성을 구현하십시오.
  3. 템플릿의 인스턴스를 만들 컨테이너로 INamingContainer 인터페이스를 구현하는 서버 컨트롤 클래스를 정의합니다. 이를 템플릿의 명명 컨테이너라고합니다.
  4. ITemplate을 구현하는 속성에 TemplateContainerAttribute를 적용하고 템플릿의 명명 형식 인 컨테이너를 인수로 속성 생성자에 전달합니다.
  5. 컨트롤의 Init 메서드에서 다음 단계를 한 번 이상 반복합니다.
    • 명명 컨테이너 클래스의 인스턴스를 만듭니다.
    • 명명 컨테이너에 템플릿의 인스턴스를 만듭니다.
    • PlaceHolder 서버 컨트롤의 Controls 속성에 명명 컨테이너 인스턴스를 추가합니다.
관련 문제