프로그래밍/ASP.NET

ListBox

Doonee 2013. 10. 16. 15:45
반응형

ListBox 콘트롤은 DropDownList 콘트롤을 펼쳐놓은 것과 흡사하며 관리자단 에서 관리자권한 설정 등에 활용하면 좋습니다. 차이점이 있다면 SelectionMode 에서 Multiple로 선택시 동시에 여러개의 항목선택이 가능하다는 것입니다.


구상자에서 ListBox 콘트롤을 하나 배치합니다.



Page_Load() 부분에 동적으로 아이템을 추가합니다.



브라우저로 실행하면 국어, 영어가 정상적으로 출력됩니다.




Html 소스를 보면 value값과 화면에 출력되는 Text값이 같다는 걸 알 수 있습니다.



value와 text를 다르게 입력하는 방법은 ListItem 을 사용하면 됩니다.



브라우저로 출력하면 정상적으로 출력됩니다.



Html 소스를 보면 좀전의 동일한 value, text 값과 다르게 설정해준 각각의 다른 'Math'와 '수학'이 지정 되었습니다.



디자인 모드로 와서 버튼을 하나 추가해서



버튼 클릭시에 선택된 값을 출력하는 이벤트를 작성합니다.



수학을 선택하고 버튼을 누르면 Math 라는 값이 정상적으로 출력됩니다. 그러나 문제가 하나 발생 했습니다. 한번씩만 출력되어야 하는 항목들이 버튼을 누를 때마다 추가됩니다.



반복되지 않고 처음 로드될 때만 출력되도록 !IsPostBack 옵션을 줍니다.



브라우저로 확인하면 정상적으로 수정 되었습니다. 그러나 또다른 문제가 또 발생 했습니다. 단일값만 선택이 되는 것입니다.



ListBox를 선택하고 F4 를 눌러 속성에서 SelectionMode를 Multiple 로 설정 해줍니다.



다시 테스트 해보면 국어와 Math 가 정상적으로 출력됩니다.