0

私はこのようないくつかのチェックボックスリストを持っています:

    <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に保存する方法で何かを変更する必要がありますよね?

4

1 に答える 1

0

CheckBoxList.SelectedValueは単一の値であるため、もちろん、そのプロパティを使用した場合に取得できる値は1つだけです。その定義から、最初に選択された値のみを提供するように設計されています。

複数のアイテムが選択されている場合、インデックスが最も低い選択されたアイテムの値が返されます。

代わりCheckBoxList.Itemsに、それらすべてをループし、ListItem.Selectedプロパティをチェックして、それらが選択されているかどうかを確認してください。(または、同等のLINQ式を使用します。)

于 2010-07-19T17:22:29.650 に答える