Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/design-patterns/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Asp.net 从VB.net中的列表框中获取文本_Asp.net_Vb.net - Fatal编程技术网

Asp.net 从VB.net中的列表框中获取文本

Asp.net 从VB.net中的列表框中获取文本,asp.net,vb.net,Asp.net,Vb.net,在我的aspx页面中,我有 <asp:listbox class="myClass" id="lbFamilies" OnSelectedIndexChanged="lbFamilies_SelectedIndexChanged" runat="server" SelectionMode="Multiple" Height="137px" AutoPostBack="True" EnableViewState="Tr

在我的aspx页面中,我有

<asp:listbox class="myClass" id="lbFamilies" OnSelectedIndexChanged="lbFamilies_SelectedIndexChanged" runat="server"  SelectionMode="Multiple"
                                    Height="137px" AutoPostBack="True" EnableViewState="True"></asp:listbox>
我试图做的是从所选元素中获取文本,但我不知道如何执行此操作

您只需使用:


谢谢,如果我有multiselect,我将如何通过单独的元素

然后必须使用循环:

Protected Sub lbFamilies_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs)
    Dim allSelectedTexts As New List(Of String)
    For Each item As ListItem In lbFamilies.Items
        If item.Selected Then
            allSelectedTexts.Add(item.Text)
        End If
    Next
    ' following is just a bonus if you want to concatenate them with comma '
    Dim result = String.Join(",", allSelectedTexts)
End Sub
或使用LINQ单衬里:

Protected Sub lbFamilies_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs)
    Dim result = String.Join(",", From item In lbFamilies.Items.Cast(Of ListItem)()
                                  Where item.Selected
                                  Select item.Text)
End Sub

谢谢,如果我有multiselect,我将如何通过单独的元素
Protected Sub lbFamilies_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs)
    Dim allSelectedTexts As New List(Of String)
    For Each item As ListItem In lbFamilies.Items
        If item.Selected Then
            allSelectedTexts.Add(item.Text)
        End If
    Next
    ' following is just a bonus if you want to concatenate them with comma '
    Dim result = String.Join(",", allSelectedTexts)
End Sub
Protected Sub lbFamilies_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs)
    Dim result = String.Join(",", From item In lbFamilies.Items.Cast(Of ListItem)()
                                  Where item.Selected
                                  Select item.Text)
End Sub