我的vb.net webform中有5个复选框!

时间:2010-12-13 07:43:13

标签: asp.net vb.net

我的vb.net webform中有5个复选框,我希望在页面加载时已经选中了两个复选框,然后说明checkbox1和checkbox2将在页面加载事件中检查....然后当我检查checkbox3和checkbox4然后在文本框中忽略1,2 ..

将显示为3,4

我想用vb.net做...

1 个答案:

答案 0 :(得分:0)

我发现你的问题有点不清楚所以我可能会误解。

听起来您需要做的就是在页面加载事件期间存储检查复选框的位置,然后当您检查其他复选框时,您只需忽略已经检查过的复选框。

所以在你的页面加载中,有类似的东西(所有代码只是一个展示结构的例子,可能无法编译):

Dim preChecked As New List(Of CheckBox)
For Each ctrl As Control In page1.Controls
    If TypeOf ctrl Is CheckBox Then
         Dim chk As CheckBox = CType(ctrl, CheckBox)
         If chk.Checked Then
             preChecked.Add(chk)
         End IF
    End If
Next

然后在你的其他代码中,你只需要:

For Each ctrl As Control In page1.Controls
    If TypeOf ctrl Is CheckBox Then
         Dim chk As CheckBox = CType(ctrl, CheckBox)
         If Not preChecked.Contains(chk) Then
              If chk.Checked Then
                   ' chk is checked but wasn't checked in the page load so show that in the textbox
              End If
         End If
    End If
Next