본문 바로가기

Languages/ASP .NET

ASP.NET - List Control & Collection


리스트 컨트롤과 컬렉션(리스트 컨트롤, 선택 리스트 컨트롤, 데이터 바인딩)

▶리스트 컨트롤

  • 이 컨트롤은 선택 항목을 리스트로 보여주며, 사용자가 나열된 항목 중에서 고루는 방식입니다.
  • 나열항목이 많아 리스트 박스에 다 보여줄 수 없는 경우, 컨트롤 옆에 스크롤바가 나타나고, 사용자는 스크롤바를 이동하면서 원하는 항목을 선택할 수 있습니다.
  • [종류]
    • ListBox 컨트롤
    • DropDownList 컨트롤
    • RadioButtonList 컨트롤
    • CheckBoxList 컨트롤
  • 리스트 컨트롤은 여러 개의 항목 중에서 하나를 선택하는 컨트롤이며, 선택 항목을 추가할 때, 컬렉션 클래스와 연결해서 추가하는 방법이 있는데, 이것을 데이터 바인딩(Data Binding)이라고 합니다.
  • [따라하기] - ListBox 컨트롤

 


▲ [1] 위와 같이 리스트 박스를 추가해봅니다.


 


▲ [2] 초기에는 데이터가 포함되지 않아 바인딩되지 않았다고 뜨지만,

속성의 Items 의 컬렉션을 이용해서 추가할 수 있습니다.




 



▲ [3] 멤버를 위와 같이 추가할 수 있습니다. Text 는 화면에 표시할 내용이고,

Value 는 프로그래밍적으로 코딩시에 사용하는 내용입니다.





▲ [4] 확인 버튼의 속성을 위와 같이 변경합니다.





▲ [5] 이벤트코드를 작성해볼께요. 위의 소스를 참고하세요

 

 


▲ [6] 많은 항목이 생기면 스크롤바가 생겨야 하겠죠? 멀티라인으로 변경합니다.





▲ [7] 버튼을 클릭해볼까요 ?





▲ [8] 선택된 항목이 없으면, 선택된 항목이 없다고 표시되네요. 왜그럴까? 하고 소스를 참고해 봅니다.





▲ [9] 선택하고 버튼을 클릭하면 위와 같이 나오네요.




▶DropDownLIst 컨트롤

DropDownList 컨트롤박스는 버튼을 눌렀을 때 여러개의 항목이 리스트로 펼쳐집니다. 펼쳐진 목록 중에서 하나를 선택할 수 있으며, 선택 후에는 펼쳐진 화면이 닫힙니다.

[따라하기]

 



▲ [1] DropDownList 도 위에서 해봤던 리스트박스 컨트롤과 다를바가 얼마 없습니다.




 



▲ [2] 다만 데이터가 모두 표시되지 않고, 드롭 다운 형식입니다. 보시면 아시겠죠?




 



▲ [3] 마찬가지로 동일하게 추가 가능합니다.




 



▲ [4] 메세지가 저곳에 출력되겠네요.




 



▲ [5] 끝





선택 리스트 컨트롤


[종류]
  • RadioButtonList
  • CheckBoxList

▶RadioButtonLIst 컨트롤

  • 라디오 버튼과 다른 점은 항목들이 이미 그룹으로 묶여져 있다는 것입니다.
  • 실제로 이 기능을 라디오 버튼 각각을 사용하는 것보다 더 많이 사용한다는 것 잊지마세요 ^^
  • [따라하기]

 



▲ [1] 라디오버튼리스트를 클릭하여 추가합니다.




 


▲ [2] 위에처럼 작은 화살표를 누르면 빠른 작업메뉴가 뜨는데요, 항목 편집을 클릭하면,

동일하게 컬렉션 아이템 추가가 가능합니다.





▲ [3] 체크박스 리스트도 추가합니다.




 



▲ [4] 이 녀석도 동일하죠~ ㅋ 쉽다잉 ~ ~ ~ ~ !




 



▲ [5] 대충 디자인도 이렇게 끝내고 ㅋ 소스를 작성해봅니다.

# 주의할 점은 확인 버튼이라던지, 레이블 ID는 소스를 참고하여 지정해주셔야 합니다.



 


▲ [6] 복잡해보이지 안횾? ㅡ.,ㅡ 참 쉬워요잉 ..




 


▲ [7] 이제 실행하고 적용한 결과입니다.

    • 반복문을 사용하지 않는 방법도 있습니다 ㅡㅋㅋㅋ

    • if (CheckBoxList1.Items[0].Selected)
      lbl_App.Text += CheckBoxList1.Items[0].Text;
      else if (CheckBoxList1.Items[1].Selected)
      lbl_App.Text += CheckBoxList1.Items[1].Text;
      else if (CheckBoxList1.Items[2].Selected)
      lbl_App.Text += CheckBoxList1.Items[2].Text;

    • 이렇게 하면 되요 ㅡ.,ㅡ 근데 반복문을 사용하는게 더 편리하겠죠? :D

'Languages > ASP .NET' 카테고리의 다른 글

ASP.NET - 데이터베이스  (0) 2011.08.31
ASP.NET - C# 언어  (0) 2011.08.31
ASP.NET - 패널(Panel), Literal, Table  (0) 2011.08.31
ASP.NET - 기본 컨트롤 사용  (0) 2011.08.31
ASP.NET - 폼 데이터 보내기  (0) 2011.08.31