Steven Kuhn

Web developer. Avid gamer. Tech geek.

Extension Method to Sort ListItems in a ListControl in ASP.NET

Yesterday I needed a way to sort the items in a ListControl (in this case, a DropDownList) after the list had been populated. The reason for that is after I databound my DropDownList from a collection of items, I inserted a few more ListItems depending on certain circumstances. Instead of trying to hack some method of inserting those items in my original collection, I wanted a more elegant solution. After I came across a post on Google I came up with a solution using an extension method and LINQ:

I wanted a simple solution so I didn’t do any performance metrics on it. Things I might change is add ability to sort by ListItem.Value, add the ability to change the sort direction, or perhaps sort by a custom comparer. So if you want a way to sort a ListItemCollection, give this a try and let me know what you think! :)

Update (July 16, 2009) The post that I found http://coercedcode.blogspot.com/2007/08/sorting-listitem-collections-in-aspnet.html no longer works. If I find it, I’ll update this post.

Comments