Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people, just like you, are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
Solved

sort not working using a listbox in vb.net 2005

Posted on 2007-11-14
4
1,002 Views
Last Modified: 2013-11-26
Hi,

I have a listbox with the following data in it: -

12
8
13
2
11
9

I would like to sort it in numerical order. I have set sorted as true but it does not  do it. What am I doing wrong please.

Many Thanks
Lee
0
Comment
Question by:ljhodgett
  • 2
  • 2
4 Comments
 

Author Comment

by:ljhodgett
ID: 20281296
sorry code I'm using is: -

 For i = 0 To 5


            Dim r As New Random
retry_Number:
            Found = False
            Returned_Number = Convert.ToInt32(r.NextDouble * 49)
            If Returned_Number = 0 Then
                GoTo retry_Number
            End If
            x = 0
            For x = 0 To lstLuckyDip.Items.Count - 1
                If lstLuckyDip.Items.Count > 0 Then
                    lstLuckyDip.SelectedIndex = x
                    If Returned_Number = lstLuckyDip.Text Then
                        Found = True
                    End If
                End If
            Next
            If Found = False Then
                lstLuckyDip.Items.Add(Returned_Number)
            Else
                GoTo retry_Number
            End If
        Next
0
 
LVL 48

Expert Comment

by:jpaulino
ID: 20281357
You can set the sorted = false and add in the of you routine (after fill the code):

lstLuckyDip.Sorted = True

Notice that this will order by the first number so will end like this:

11
12
13
2
9
8

You can change the format to 02,08,09 and it sorts right.
0
 

Author Comment

by:ljhodgett
ID: 20281573
right ok,

how would I sort it so it would be: -

2
8
9
11
12
13

Many Thanks
Lee
0
 
LVL 48

Accepted Solution

by:
jpaulino earned 500 total points
ID: 20281686
The easy way (at least for me) is to change you Returned_Number to 2 numbers like 02, 08, 09.

You can do that using padleft like this

lstLuckyDip.Items.Add(Returned_Number.ToString.PadLeft(2,"0"))
0

Featured Post

Master Your Team's Linux and Cloud Stack

Come see why top tech companies like Mailchimp and Media Temple use Linux Academy to build their employee training programs.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Flash (http://en.wikipedia.org/wiki/Adobe_Flash) has evolved over the years to where it has become a masterful tool for displaying content screen.  It has excellent layout placement, UI precision as well as rendering capabilities. This, along with t…
The object model of .Net can be overwhelming at times – so overwhelming that quite trivial tasks often take hours of research. In this case, the task at hand was to populate the datagrid from SQL Server database in Visual Studio 2008 Windows applica…
Nobody understands Phishing better than an anti-spam company. That’s why we are providing Phishing Awareness Training to our customers. According to a report by Verizon, only 3% of targeted users report malicious emails to management. With compan…

829 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question