2009-09-17 4 views
1

asp.net 서버 컨트롤 집합을 구축하고 그 중 하나에서 본질적으로 컨테이너 컨트롤, 폼 컨트롤, 스크립트 관리자 및 업데이트 패널을 추가하고 싶습니다. 이것이 가능합니까 아니면 페이지/컨트롤 수명주기의 이유로 웹 프로젝트에 대해 가지고있는 Page 기본 클래스에서 이들을 만들어야합니까?양식 및 scriptmanager 사용자 지정 서버 컨트롤

마스터 페이지를 사용하고 있지 않습니다.

안부, 앤드류는

답변

1

ASP.NET 페이지에 하나의 양식을 할 수 있습니다. 컨트롤을 만들면 페이지에서 사용됩니다. 컨트롤을 추가하려면 Page 객체가 필요합니다. 이것이 폼과 ScriptManager (페이지에 하나의 인스턴스 만 가질 수있는) 같은 컨트롤이 페이지 자체 또는 마스터 페이지 (있는 경우)에 놓이는 이유입니다. 그것들을 컨트롤에 넣어두면 페이지에 두 개의 인스턴스가 생겨서 작동하지 않을 수 있습니다.

+0

예, 이전에 일반적으로 해왔 던 방법이지만 프로그래밍 방식으로이 작업을 수행해야한다는 요구 사항이 있습니다. 사용자가 말하는 것처럼 페이지 페이지 클래스에서 마스터 페이지를 선호합니다. 서버 컨트롤에서이 모든 작업을 수행 할 수있는 "가능한"것인지 궁금한 점이었습니다. 수명주기 이벤트에서 솔리드가되기 위해 더 견고해야합니다! 두 번째 폼이 추가되었다고해도 페이지에서 "_fOnFormRenderCalled"필드를 검사하고 폼이 이미 추가 된 경우 예외가 발생하므로 어쨌든 일어날 수 없습니다. – Knoxy

관련 문제