참조
https://learn.microsoft.com/en-us/previous-versions/aspnet/zsyt68f1(v=vs.100)
서버 컨트롤
- 서버 측에서 실행되며, 클라이언트에게 동적인 HTML 콘텐츠를 생성하는 컴포넌트
- 상태 정보를 유지할 수 있음
· 기본적으로는 View State를 활용함 (https://young0105.tistory.com/363)
- 서버 측에서 발생하는 이벤트를 처리할 수 있음
ex) 버튼 클릭 시 서버 측 코드가 실행되도록 처리
- 데이터 소스와 바인딩할 수 있는 기능을 제공함
ex) GridView, Repeater, ListView 등의 컨트롤을 사용하여 DB 데이터를 화면에 표시할 수 있음
▶ HTML 서버 컨트롤
- 일반 HTML 요소에 runat="server" 속성을 추가하여, 서버 측에서 접근할 수 있도록 만든 컨트롤
<input type="text" runat="server" id="txtName" />
- HTML 요소와 매우 유사한 객체 모델을 제공함
: 각 HTML 요소는 ASP.NET에서 특정 속성 및 메서드와 매핑됨
- 동적으로 생성/수정할 수 있음
- 기본적으로 ViewState를 지원하지만, 상태 관리는 개발자가 수동으로 처리해야 할 수 있음
▶ 웹 서버 컨트롤
- 다양한 내장 기능을 갖춘 컨트롤
→ 상태 관리, 데이터 바인딩, 이벤트 처리 등의 작업을 더 간편하게 수행할 수 있음
- 객체 모델이 HTML 구문을 반드시 반영하지는 않음
→ HTML 서버 컨트롤보다 더 높은 수준의 추상화를 제공함
→ 각 컨트롤의 특정 기능을 사용하여 더 복잡한 UI를 쉽게 구성할 수 있음
- ViewState를 자동으로 관리함
→ 페이지가 다시 로드되더라도 컨트롤의 상태를 쉽게 복원할 수 있음
- onclick을 사용하여, 클릭 시 백에서 이벤트를 처리하는 것도 가능함
<!-- Textbox Web server control -->
<asp:textbox id="TextBox1" runat="Server" Text=""></asp:textbox>
<!-- Same, but with self-closing element -->
<asp:textbox id="Textbox2" runat="Server" Text="" />
<!-- Web DropDownList control, which contains subelements -->
<asp:DropDownList id="DropDown1" runat="server">
<asp:ListItem Value="0">0</asp:ListItem>
<asp:ListItem Value="1">1</asp:ListItem>
<asp:ListItem Value="2">2</asp:ListItem>
<asp:ListItem Value="3">3</asp:ListItem>
</asp:DropDownList>
<asp:Repeater id="Repeater2" runat="server">
<HeaderTemplate>
Company data:
</HeaderTemplate>
<ItemTemplate>
<asp:Label ID="Label1" runat="server"
Font-Names="verdana" Font-Size="10pt"
Text='<%# Eval("Name") %>' />
( <asp:Label ID="Label2" runat="server"
Font-Names="verdana" Font-Size="10pt"
Text='<%# Eval("Ticker") %>'/>
)
</ItemTemplate>
<SeparatorTemplate>
,
</SeparatorTemplate>
</asp:Repeater>
'C#' 카테고리의 다른 글
[C#] 값 형식 (Value types) & 참조 형식 (Reference types) (0) | 2024.10.25 |
---|---|
[C#/dotnet] 라우팅 (Routing) (4) | 2024.10.25 |
[C#/dotnet] View State (1) | 2024.10.24 |
[C#/dotnet] 페이지 구조 - 마스터 페이지 & 콘텐츠 페이지 (1) | 2024.10.24 |
[C#/dotnet] 페이지 수명 주기 (3) | 2024.10.24 |