출처 : HOONS 닷넷
웹프로그래밍의 기초인 게시판을 작성할 때 ASP.NET 1.x의 DataGrid를 많이
사용하는데 편리하고 상용 그리드에 비해 가볍지만 기능이 부족한 점(셀 머징, 소팅, 스크롤)이
있습니다.
개인적으로 불만이었던 점 중의 하나가
게시판의 페이지 번호 부분이었는데
DataGrid 컨트롤이
'... 1 2 3 4 5 ...'과 같이 일반적인 게시판에 있는
'[처음][이전]1 2 3 4 5 [다음][마지막]'과
같은 모습을 제공해 주지 않고 있습니다.
이 부분을 커스터마이징 할 수 있는 방법은
DataGrid 컨트롤의 ItemCreated란 이벤트 핸들어에 아래 코드를 추가하면 됩니다.
게시판의 페이저 부분을 '◀ 1 2 [3] 4 5 ▶'로 바꿔줍니다.
bool exist = false;
if(e.Item.ItemType == ListItemType.Pager)
{
TableCell Pager = (TableCell)e.Item.Controls[0];
Pager.VerticalAlign = VerticalAlign.Middle;
for(int n=0; n<Pager.Controls.Count; n+=2)
{
try
{
Label l = (Label) Pager.Controls[n];
l.Text = "["+l.Text+"]";
l.CssClass = "plinkstyle";
}
catch
{
LinkButton h = (LinkButton) Pager.Controls[n];
if((h.Text == "...") && (!exist))
{
h.Text = "◀";
h.CssClass = "plinkstyle";
}
else if((h.Text == "...") && (exist))
{
h.Text = "▶";
h.CssClass = "plinkstyle";
}
else
{
exist = true;
h.CssClass = "plinkstyle";
}
}
}
}
'IT-개발,DB' 카테고리의 다른 글
[개발] crontab 사용하여 mysql 자동 백업 파일 생성 (0) | 2010.11.05 |
---|---|
[개발] ASP.NET 파일 업로드 하기 (0) | 2010.11.05 |
[개발] ASP.NET 에서의 에러처리를 다루어 봅시다 (0) | 2010.11.05 |
[개발] ASP.NET 닷넷 에디터 게시판 사용하기 (0) | 2010.11.05 |
[개발] ASP에서 ActiveX DLL 사용하기 (0) | 2010.11.04 |
댓글