2013-04-23 4 views
1

약간의 도움을 주시면 MS Sql DB를 사용하여 VB의 현재 프로젝트를 확장하여 자전거 대여/예약 프로그램을 설계하고 있습니다.다른 체크 박스가 선택되었을 때 DataGridview의 체크 박스를 자동으로 선택

DB에서 끌어온 데이터 행이 여러 개 표시되는 DataGridview가 있으며 두 개의 열을 수동으로 추가하여 몇 개의 확인란을 표시합니다.

누군가가 첫 번째 체크 박스 열을 사용하여 자전거를 선택하면 두 번째 체크 박스 열 (헬멧 선택 용)이 자동으로 선택됩니다. 그 사람이 헬멧을 원하지 않는다면, 사용자는 그 옵션을 선택 취소 할 수 있습니다. 이것은 헬멧을 착용 할 필요없이 결정권이 없으면 자동으로 헬멧을 받도록하기위한 것입니다.

첫 번째 확인란을 선택하여 두 번째 확인란을 선택하려면 어떻게합니까? 나는 사용자가 셀을 클릭 할 때의 이벤트 핸들러가 :

Private Sub dgvBikeAvailability_CellContentClick(sender As System.Object, e As System.Windows.Forms.DataGridViewCellEventArgs) Handles dgvBikeAvailability.CellContentClick 
    drBikeAvailability = dvBikeAvailability(e.RowIndex).Row 

    'MsgBox to test data pass through 
    MsgBox(drBikeAvailability("bikeName")) 

End Sub 

나는 내가있는 DataGridView에 추가 한 여분의 열을 액세스하는 것을 시도하고있다,하지만 그들은 데이터 테이블에 존재하지 않기 때문에, 내가 드릴 수 없습니다 짝수 핸들러에서 그렇게합니다.

모든 아이디어와 제안을 매우 높이 평가합니다.

+0

Bike to Helmet과 관련이있는 데이터베이스가 있습니까? 아니면 그냥 손으로 만든 규칙일까요? – granadaCoder

+0

왜이 확인란을 기본적으로 선택하지 않는 것이 좋을까요? – JdMR

답변

2

주먹 확인란이 열 색인 0에 있고 두 번째 색인 2에 있다고 가정 해 봅시다. (나는 색인의 열을 색인으로 바꿀 수 있다고 생각합니다). 이벤트가 클릭의 정상적인 작동을 불가능하게하는 것처럼 체크 박스의 값을 직접 처리해야합니다.

Private Sub dgvBikeAvailability_CellContentClick(sender As Object, e As DataGridViewCellEventArgs) Handles dgvBikeAvailability.CellContentClick 
    If e.ColumnIndex = 0 Then 
     dgvBikeAvailability.Rows(e.RowIndex).Cells(0).Value = Not dgvBikeAvailability.Rows(e.RowIndex).Cells(0).Value 
     dgvBikeAvailability.Rows(e.RowIndex).Cells(2).Value = dgvBikeAvailability.Rows(e.RowIndex).Cells(0).Value 
    End If 
End Sub 

알려 주시면 알려드립니다.

+0

완벽하게 작동합니다! 많은 감사 :) – DazEvans

관련 문제