使用VB在asp.net中使用checkboxlist控件预选复选框

时间:2011-11-10 02:22:28

标签: asp.net vb.net checkboxlist

如何在页面加载时自动选中复选框列表中的某个项目?我的复选框列表中的项目来自SQL DB,我希望自动选择其中一个字段。如果我没有从数据库中检索我的checkboxlist项目,我找到了这个问题的简单解决方案,但我无法根据我的情况找出如何做到这一点。任何帮助将不胜感激。

以下是我的2个相关网页的代码:

ALCounties.aspx.vb

Imports System.Collections.Generic

Partial Class ALCounties
Inherits System.Web.UI.Page

Protected Sub Button1_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles Button1.Click
    Dim chkValues As Dictionary(Of String, Double) = _
        New Dictionary(Of String, Double)


    For Each Item As ListItem In CheckBoxList1.Items
        If (Item.Selected) Then
            If (Not Item.Value Is Nothing And Not String.IsNullOrEmpty(Item.Value())) Then
                chkValues(Item.Text.ToString) = Convert.ToDouble(Item.Value)
            Else
                chkValues(Item.Text.ToString) = 0
            End If

        End If
    Next Item

    Session("CheckedItems") = chkValues
    Response.Redirect("Cart.aspx")
End Sub
End Class

ALCounties.aspx

<asp:CheckBoxList ID="CheckBoxList1" runat="server" 
                DataSourceID="SqlDataSource1" DataTextField="AL_County" 
                DataValueField="AL_Fee">
            </asp:CheckBoxList>
       </div>
            <asp:SqlDataSource ID="SqlDataSource1" runat="server"        ConnectionString="<%$ ConnectionStrings:advancedleadsConnectionString %>" 
                SelectCommand="SELECT [AL_Fee], [AL_County]  FROM [AL]">   </asp:SqlDataSource>

        <p>&nbsp;</p>
        <p>
        <asp:Button ID="Button1" runat="server" Text="Submit" />
        </p>

1 个答案:

答案 0 :(得分:1)

我会为CheckBoxList的OnDataBound事件添加一个处理程序。在此处理程序中,您可以预先控制控件的.Items属性,并评估您对要选择的项目的wahtever条件。