2011-05-12 3 views
0

ASP.NET에 CheckBox이 포함 된 ASP.NET에 ListView이 있습니다. 사용자가 클릭을 변경했을 때 데이터베이스를 업데이트하려면 OnCheckedChanged을 사용합니다. 그러나 각 체크 박스와 관련된 데이터베이스의 레코드를 어떻게 알 수 있습니까?ASP.NET의 ListView 행에서 데이터베이스 ID 가져 오기

답변

0

DataKeys 속성을 개별 레코드 ID를 나타내는 문자열로 설정해야합니다.

Item Data Bound 이벤트가되면 다음을 사용하여 ID 값을 참조 할 수 있습니다.

DataKey currentDataKey = myListView.DataKeys[e.Item.DataItemIndex]; 

그러면 currentDataKey 값을 사용하여 데이터베이스 레코드를 간단히 조회 할 수 있습니다.

+0

그러나 OnCheckedChanged가 실행될 때 어떻게 정보를 사용할 수 있습니까? 많은 CheckBox가 있습니다. – magol

+0

템플릿을 설정할 때 확인란의 값을 행의 ID로 설정하지 않으시겠습니까? 그런 식으로 체크 박스가 열리면 레코드를 식별하고 필요한 모든 작업을 수행하는 데 필요한 ID가 생깁니 까? –

0

CheckBox 컨트롤에는 ListViewItem으로 변환되어야하는 Parent 속성이 있습니다. 그렇지 않은 경우 일련의 .Parent.Parent.etc을 시도 할 수 있으며 부모 중 하나가 목록 상자 항목이됩니다.

HTH.

관련 문제