Retrieve Selected Items of an ASP.NET ListBox using LINQ

I had recently written a post on Programmatically Select Multiple Items of an ASP.NET ListBox. A user ‘JukeBox’ mailed back asking me if it was possible to retrieve the selected items of a ListBox using LINQ. Here’s how to do so:

asp:ListBox ID="ListBox1" runat="server" SelectionMode="Multiple">
asp:ListItem Value="One" Selected="True" />
asp:ListItem Value="Two" />
asp:ListItem Value="Three" />
asp:ListItem Value="Four" Selected="True" />
asp:ListItem Value="Five" />
br />
br />
asp:Button ID="btnSel" runat="server" Text="Get Selected"
onclick="btnSel_Click" />


protected void btnSel_Click(object sender, EventArgs e)
var selItems = from ListItem li in ListBox1.Items
where li.Selected == true

Response.Write("Selected Item(s): </br>");
foreach (var item in selItems)
Response.Write(item.ToString() + "</br>");


Protected Sub btnSel_Click(ByVal sender As Object, ByVal e As EventArgs)
Dim selItems = _
From li As ListItem In ListBox1.Items _
Where li.Selected = True _
Select li.Text

Response.Write("Selected Item(s): </br>")
For Each item In selItems
Response.Write(item.ToString() & "</br>")
Next item
End Sub

On clicking the Button, the selected items are fetched as shown below:


Will you give this article a +1 ? Thanks in advance

About The Author

Suprotim Agarwal
Suprotim Agarwal, ASP.NET Architecture MVP (Microsoft Most Valuable Professional) works as an Architect Consultant and provides consultancy on how to design and develop Web applications.

Suprotim is also the founder and primary contributor to DevCurry, DotNetCurry and SQLServerCurry. He is the Editor of a Developer Magazine called DNC Magazine. He has also written two EBooks 51 Recipes using jQuery with ASP.NET Controls. and The Absolutely Awesome jQuery CookBook

Follow him on twitter @suprotimagarwal

No comments: