안녕하세요? 웹지니입니다.
이번 강좌는 얼마전 공개했던 웹지니의 웹 서버 컨트롤 중 RepeaterEx 컨트롤에 대한 사용법을 소개합니다. 웹지니의 웹 서버 컨트롤 다운로드는여기를 클릭하세요.
RepeaterEx 컨트롤은 ASP.NET이 제공하는 Repeater 컨트롤을 확장한 컨트롤입니다. 이 컨트롤은 <EmptyDataTemplate> 템플릿을 제공하는데 이 템플릿은 DataSource 속성에 지정된 데이터 원본이 데이터를 가지고 있지 않을때 출력될 컨텐츠를 지정하기 위한 템플릿입니다.
예제를 통해 간단히 살펴볼까요? 먼저 Visual Studio 2005를 실행하고 새로운 웹사이트 프로젝트를 생성하고 아래 그림과 같이 솔루션 탐색기에서 웹사이트 프로젝트를 마우스 오른쪽 버튼으로 클릭하고 [참조 추가] 메뉴를 클릭합니다.
그림 1: 참조를 추가하는 모습
참조 추가 대화 상자가 나타나면 아래 그림과 같이 다운로드 한 Daniel.Web.dll 파일을 지정하고 [확인] 버튼을 클릭합니다.
그림 2: 참조 추가 대화 상자의 모습
이제 Web.config 파일을 열고 <system.web> 섹션의 <pages> 섹션에 다음의 코드를 추가합니다.
<controls>
<add tagPrefix="daniel" namespace="Daniel.Web.UI.Controls" assembly="Daniel.Web" />
</controls>
이제 웹 폼 페이지를 열고 아래와 같이 RepeaterEx 컨트롤을 추가하는 코드를 작성합니다.
그림 3: RepeaterEx 컨트롤을 추가한 모습
이제 데이터 바인딩을 수행해 볼 차례군요. Default.aspx.cs 파일을 열고 Page_Load 이벤트에 아래와 같이 간단한 코드를 작성해 보겠습니다.
그림 4: Page_Load 핸들러 메서드의 코드
이 코드는 DataTable 클래스를 생성하고 임의로 두 개의 DataColumn을 추가한 후 간단한 문자열 값을 각 컬럼에 대입한 코드입니다. 이렇게 생성된 DataTable 클래스 인스턴스를 RepeaterEx 컨트롤의 DataSource 속성에 대입하고 DataBind 메서드를 호출하면 아래 그림과 같이 데이터가 바인딩 되어 나타납니다.
그림 5: 데이터 바인딩이 수행된 모습
그러면 데이터가 없는 경우를 시뮬레이션 하기 위해 아래 그림과 같이 DataTable 객체에 값을 채우는 코드를 주석처리 해 보겠습니다.
그림 6: 데이터 추가 코드를 주석처리 한 모습
이제 예제를 다시 실행해 보면 아래 그림과 같이 <EmptyDataTemplate> 템플릿 내의 컨텐츠가 표시되는 것을 볼 수 있습니다.
그림 7: <EmptyDataTemplate> 템플릿 컨텐츠가 나타난 모습
RepeaterEx 컨트롤은 이상과 같이 사용하시면 되겠습니다.
너무 간단해서 조금 민망한 도움말 강좌였습니다. ^^;;
|