使用vb.net将复选框列表值保存到xml

使用vb.net将复选框列表值保存到xml,xml,vb.net,checkboxlist,Xml,Vb.net,Checkboxlist,我有一些如下的复选框列表: <asp:CheckBoxList ID="G1" runat="server"> <asp:ListItem Value="Comunicações Unificadas" Text="Comunicações Unificadas - UCoIP"></asp:ListItem> <asp:ListItem Value=

我有一些如下的复选框列表:

    <asp:CheckBoxList ID="G1" runat="server">
                        <asp:ListItem Value="Comunicações Unificadas" Text="Comunicações Unificadas - UCoIP"></asp:ListItem>
                        <asp:ListItem Value="Gestão Documental" Text="Gestão Documental - iPortalDoc"></asp:ListItem>
                        <asp:ListItem Value="Gestão Conteúdos Web" Text="Gestão de Conteúdos Web"></asp:ListItem>
                        <asp:ListItem Value="Promoção Websites" Text="Promoção de Websites"></asp:ListItem>
                        <asp:ListItem Value="Serviços de Consultoria" Text="Serviços de Consultoria"></asp:ListItem>
</asp:CheckBoxList>

我需要更改将数据保存为xml的方式,对吗?

复选框列表。SelectedValue
只是一个值,因此使用该属性时,您当然只能得到一个值。其设计仅为您提供第一个选定值:

如果选择了多个项目,则返回索引最低的所选项目的值

改为使用
CheckBoxList.Items
,循环浏览所有项目,并检查
ListItem.Selected
属性以查看是否已选中它们。(或者使用等效的LINQ表达式,以您喜欢的为准。)

    Dim visitor As XmlElement = doc.CreateElement("Cliente")

    Dim res1 As XmlElement = doc.CreateElement("Resposta1")
    res1.InnerText = G1.SelectedValue.ToString


    visitor.AppendChild(res1)

    doc.DocumentElement.AppendChild(visitor)

    doc.Save(LocalizacaoFicheiro)