Сохраните значения checkboxlist в xml, используя vb.net - PullRequest
0 голосов
/ 19 июля 2010

У меня есть такой флажок:

    <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.

В настоящий момент, если я выбираю более одного значения для отправки, в файле XML я получаю только первое выбранное, остальные не отображаются в файле.

Я сохраняю значения в xml-файле следующим образом:

Dim doc As New XmlDocument () doc.Load (LocalizacaoFicheiro)

    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)

Мне нужно что-то изменить, чтобы я сохранил данные в xml, верно?

1 Ответ

0 голосов
/ 19 июля 2010

CheckBoxList.SelectedValue это просто одно значение, поэтому, конечно, вы получаете только одно значение, когда используете это свойство. Из определения он предназначен для предоставления вам только первого выбранного значения:

Если выбрано несколько элементов, возвращается значение выбранного элемента с наименьшим индексом.

Вместо этого используйте CheckBoxList.Items, просматривая все из них и проверяя свойство ListItem.Selected, чтобы увидеть, были ли они выбраны или нет.(Или используйте эквивалентное выражение LINQ, в зависимости от того, что вы предпочитаете.)

...