Asp.Net에 대한 사용자 지정 컨트롤을 작성하는 데는 여러 가지 방법이 있습니다. 어떤 사람들은 System.Web.UI.WebControls.WebControl
을 기본 클래스로 사용하고 다른 사람들은 System.Web.UI.Control
을 새로운 컨트롤의 기본 클래스로 사용합니다.사용자 지정 컨트롤 작성 : WebControl 또는 Control?
둘 중 하나를 기준으로 선택하는 이유는 무엇입니까?
Asp.Net에 대한 사용자 지정 컨트롤을 작성하는 데는 여러 가지 방법이 있습니다. 어떤 사람들은 System.Web.UI.WebControls.WebControl
을 기본 클래스로 사용하고 다른 사람들은 System.Web.UI.Control
을 새로운 컨트롤의 기본 클래스로 사용합니다.사용자 지정 컨트롤 작성 : WebControl 또는 Control?
둘 중 하나를 기준으로 선택하는 이유는 무엇입니까?
System.Web.UI.WebControls.Webcontrol
은 System.Web.UI.Control
에서 파생되었으며 스타일 지정 (BackgroundColor, Style 등)에 대한 지원을 추가합니다.
Control
에는 기본적으로 지원되지 않으므로 속성을 만들어 직접 구현하고 Render()
메서드에서 처리해야합니다. WebControls
에는 특정 공통 속성에 대한 테마 및 도구 상자 지원도 함께 제공됩니다.
좋은 점 ! 하지만 어쨌든 주제를 사용하지 않기 때문에 Control 클래스에 집중할 것입니다. –
컨트롤에는 WebControl이 응답 개체를 렌더링 할 때 사용자 인터페이스가 없습니다.
사용자 인터페이스는 Render 메서드를 재정 의하여 컨트롤에 렌더링 할 수 있습니다. –
예,하지만 천문학적으로 불필요한 개발 노력이 필요합니다. 또한 WebControls 클래스는 Visible 속성과 같이 보이는 ASP.NET 컨트롤에서 기대하는 거의 모든 기능을 제공합니다. –
@Ben f. check : http://msdn.microsoft.com/en-us/library/system.web.ui.control.visible.aspx 컨트롤에는 Visible도 있습니다. –
다양한 배관 코드가 UI를 생성하기 때문에 컨트롤이 UI 페이지를 렌더링 된 페이지로 표시하려면 System.Web.UI.WebControls.WebContro
l을 사용해야합니다 (그래도 해당 UI를 만드는 데 상당한 작업이 필요함).
System.Web.UI.Controls
은 렌더링 된 페이지에 UI가없는 경우 (도구 상자에있는 ASP.NET DataSource 컨트롤 중 일부는 페이지에 끌어다 놓을 수 있으며 아무것도 렌더링하지 않고 동작 할 수 있음을 나타냅니다. UI가있는 GridView 컨트롤에 데이터를 가져 오기위한 도관으로 사용).
유일한 차이점은 UI입니까? BackgroundColor와 비슷한 것들이 있습니까? –
차이점 WebControls에는 클라이언트 측에서 .aspx 페이지가 해석 된 후에 UI 컨트롤이 렌더링되는 반면 컨트롤에는 최종 사용자에게 재구성 가능한 UI가 없습니다 (이들은 철저히 배후 코드입니다) –
[\ [ASP.NET \] 가능한 중복 사용자 정의 컨트롤, 서버 컨트롤 및 사용자 지정 컨트롤 간의 차이점은 무엇입니까?] (http://stackoverflow.com/questions/994009/asp-net-what-are- 사용자 - 컨트롤 - 서버 - 컨트롤 - 차이점) – Jacob
@Jacob이 질문은 기본 클래스에 대해 이야기하기 때문에 중복되지 않습니다. 컨트롤 유형 (ascx 대 C# 컨트롤)이 아닙니다. –
또한이 두 가지 모두 사용자 지정 컨트롤의 범주에 속할 것이며, .Controls는 UI가없는 것에 대한 것이고 .WebControls는 UI가있는 컨트롤에 대한 것입니다. –