|
-
Feb 16th, 2011, 04:51 AM
#1
Thread Starter
Frenzied Member
Why counting checked CheckBoxes fails
in my app I have to count the number of checkboxes have been checked to validate how many days were selected. 28 checkboxes in 2 groups of 14 to represent 2 pay periods. I tried counting the days by handling the CheckStateChanged or the CheckedChanged events of 14 checkboxes for each pay period, then if checked add 1 to payPeriod1 or 2. Either one of these works and counts the checked boes but when I try to reset my controls I get;

Code:
Private Sub CheckBox1_CheckedChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles CheckBox9.CheckedChanged, CheckBox8.CheckedChanged, CheckBox7.CheckedChanged, CheckBox6.CheckedChanged, CheckBox5.CheckedChanged, CheckBox4.CheckedChanged, CheckBox3.CheckedChanged, CheckBox2.CheckedChanged, CheckBox14.CheckedChanged, CheckBox13.CheckedChanged, CheckBox12.CheckedChanged, CheckBox11.CheckedChanged, CheckBox10.CheckedChanged, CheckBox1.CheckedChanged
Dim chbx As CheckBox = TryCast(Me.ActiveControl, CheckBox)
If chbx.Checked = True Then
payPeriod1 += 1
End If
End Sub
Private Sub CheckBox15_CheckedChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles CheckBox28.CheckedChanged, CheckBox27.CheckedChanged, CheckBox26.CheckedChanged, CheckBox25.CheckedChanged, CheckBox24.CheckedChanged, CheckBox23.CheckedChanged, CheckBox22.CheckedChanged, CheckBox21.CheckedChanged, CheckBox20.CheckedChanged, CheckBox19.CheckedChanged, CheckBox18.CheckedChanged, CheckBox17.CheckedChanged, CheckBox16.CheckedChanged, CheckBox15.CheckedChanged
Dim chbx As CheckBox = TryCast(Me.ActiveControl, CheckBox)
If chbx.Checked = True Then
payPeriod2 += 1
End If
End Sub
Private Sub CheckBox1_CheckStateChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles CheckBox9.CheckStateChanged, CheckBox8.CheckStateChanged, CheckBox7.CheckStateChanged, CheckBox6.CheckStateChanged, CheckBox5.CheckStateChanged, CheckBox4.CheckStateChanged, CheckBox3.CheckStateChanged, CheckBox2.CheckStateChanged, CheckBox14.CheckStateChanged, CheckBox13.CheckStateChanged, CheckBox12.CheckStateChanged, CheckBox11.CheckStateChanged, CheckBox10.CheckStateChanged, CheckBox1.CheckStateChanged
Dim chbx As CheckBox = TryCast(Me.ActiveControl, CheckBox)
If chbx.CheckState = CheckState.Checked Then
payPeriod1 += 1
End If
End Sub
Private Sub CheckBox15_CheckStateChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles CheckBox28.CheckStateChanged, CheckBox27.CheckStateChanged, CheckBox26.CheckStateChanged, CheckBox25.CheckStateChanged, CheckBox24.CheckStateChanged, CheckBox23.CheckStateChanged, CheckBox22.CheckStateChanged, CheckBox21.CheckStateChanged, CheckBox20.CheckStateChanged, CheckBox19.CheckStateChanged, CheckBox18.CheckStateChanged, CheckBox17.CheckStateChanged, CheckBox16.CheckStateChanged, CheckBox15.CheckStateChanged
Dim chbx As CheckBox = TryCast(Me.ActiveControl, CheckBox)
If chbx.CheckState = CheckState.Checked Then
payPeriod2 += 1
End If
End Sub
Reset controls after saving record using JMCs method of accessing buried controls:
Code:
Public Sub resetScheduleControls()
Dim ctl As Control = Me.GetNextControl(Me, True)
'Get the first control in the tab order.
Do Until ctl Is Nothing
Dim cbx As CheckBox = TryCast(ctl, CheckBox)
If cbx IsNot Nothing Then
cbx.CheckState = CheckState.Unchecked
End If
ctl = Me.GetNextControl(ctl, True)
'Get the next control in the tab order.
Loop
Me.MonthCalendar1.Enabled = True
Me.cboSelectStaffSchedule.Items.Remove(Me.cboSelectStaffSchedule.SelectedItem)
Me.cboSelectStaffSchedule.Text = "Staff Member"
If Me.cboWhatShift.Text = "Shift" And Me.cboPosition.Text = "Position" Then
Me.btnPreviewSchedule.Enabled = False
Else
Me.btnPreviewSchedule.Enabled = True
End If
End Sub
What am doing wrong or what am I misunderstanding
Posting Permissions
- You may not post new threads
- You may not post replies
- You may not post attachments
- You may not edit your posts
-
Forum Rules
|
Click Here to Expand Forum to Full Width
|