【问题标题】:Can I add Controls that are not ListItems to a RadioButtonList?我可以将不是 ListItems 的控件添加到 RadioButtonList 吗?
【发布时间】:2013-11-25 20:28:26
【问题描述】:

我需要提供一种允许用户选择 1 个主题的方法,但这些主题被分组为资格,因此我想为每个“组”显示一个标题。我的第一个想法是一个 asp:RadioButtonList,因为它提供了一个选项列表,可以从中选择 only one 但没有办法添加与标题分开的列表。

所以我尝试了以下代码 - 但我看不到正在添加 LiteralControl,这让我认为这不是一种有效的方法。

For Each item As Subject In Qualifications
    If item.QualCode <> previousQualCode Then
        rblSelection.Controls.Add(New LiteralControl(item.QualName))
    End If

    rblSelection.Items.Add(New ListItem(item.SubjectName, item.SelectionCode))
    previousQualCode = item.QualCode
Next

【问题讨论】:

    标签: asp.net radiobuttonlist


    【解决方案1】:

    不,你不能这样做。只有拥有 ListItems 才有效。另一种方法是为每个主题设置一个 RadioButton。为它们提供所有相同的 GroupName,这意味着您只能设置一个,但您可以在页面上按您喜欢的方式排列它们,也许在标题下。

        <h3>Qualification 1</h3>
        <asp:RadioButton id="rbSubject" runat="server" />
        <asp:RadioButton id="rbSubject1" runat="server" />
        <asp:RadioButton id="rbSubject2" runat="server" />
        <h3>Qualification 2</h3>
        <asp:RadioButton id="rbSubject3" runat="server" />
        <asp:RadioButton id="rbSubject4" runat="server" />
    

    代码背后:

            rbSubject.GroupName = "grp1";
            rbSubject1.GroupName = "grp1";
            rbSubject2.GroupName = "grp1";
            rbSubject3.GroupName = "grp1";
            rbSubject4.GroupName = "grp1";
    

    在您的情况下,使用占位符控件并将动态生成的控件和标题添加到占位符控件集合中。

    For Each item As Subject In Qualifications
        If item.QualCode <> previousQualCode Then
            placeholder.Controls.Add(New LiteralControl(item.QualName))
        End If
        create new button here:- sorry Im a C# dev, I dont know the VB syntax and I am editing from my phone, but you should be able to work it out.
    
        placeholder.Controls.Add(btn)
        previousQualCode = item.QualCode
    Next
    

    【讨论】:

    • 我不认为这是可能的,但我不确定。占位符的想法很有效,谢谢:)
    • 不客气。您能否将完整的代码发送给我,以便我可以在 VB 中更新我的帖子? danieldyson@gmail.com
    猜你喜欢
    • 1970-01-01
    • 2011-10-03
    • 1970-01-01
    • 2011-06-25
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多