0

我有一个包含以下 CheckBoxList 的 aspx 页面。

<form id="form1" runat="server">

    <asp:CheckBoxList id="check1" AutoPostBack="True" TextAlign="Right" OnSelectedIndexChanged="Check" runat="server">

    </asp:CheckBoxList>
    <br />
    <asp:label id="mess" runat="server"/>

</form>

然后在 .vb 页面中,我在 Page_Load 子中有一个查询,我在其中获取所有客户姓名以及他们是否是经过验证的用户(真或假)。当我遍历数据集时,我想为每个名称添加一个 ListItem,如果他们是经过验证的用户,我希望选中该复选框。这是我的数据集循环

    For i = 0 To dt.Rows.Count - 1
        If CStr(dt.Rows(i).Item("isValid")) = True Then
            "<asp:ListItem>" + CStr(dt.Rows(i).Item("Name")) + "</asp:ListItem>" 
        Else
            "<asp:ListItem>" + CStr(dt.Rows(i).Item("Name")) + "</asp:ListItem>" 
        End If

我知道上面的循环不会添加 listItems,如何在循环中添加选中的 ListItems?任何帮助,将不胜感激。谢谢

我知道有一种方法可以检查是否选中了一个框,例如

check1.Items(i).Selected 

如果没有检查如何检查?像这样的东西?:

check1.Items(i).Selected = False
4

2 回答 2

1

您可以CheckBoxList使用向 中添加项目CheckBoxList.Items.Add(ListItem)ListItem具有Selected 选中状态的属性:

For Each row As DataRow In dt.Rows
    Dim name = row.Field(Of String)("Name")
    Dim isValid = row.Field(Of Boolean)("isValid")
    Dim item = New ListItem(name)
    item.Selected = isValid
    check1.Items.Add(item)
Next
于 2012-05-11T21:13:18.997 回答
0

我不知道 VB,但在 C# 中,它想check1.items.add(new ListItem("val"))添加每个ListItem.

于 2012-05-11T20:59:24.590 回答