Solved

sort not working using a listbox in vb.net 2005

Posted on 2007-11-14
4
1,007 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
[X]
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
  • 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

Efficient way to get backups off site to Azure

This user guide provides instructions on how to deploy and configure both a StoneFly Scale Out NAS Enterprise Cloud Drive virtual machine and Veeam Cloud Connect in the Microsoft Azure Cloud.

Question has a verified solution.

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

It seems a simple enough task, yet I see repeated questions asking how to do it: how to pass data between two forms. In this article, I will show you the different mechanisms available for you to do just that. This article is directed towards the .N…
This article describes relatively difficult and non-obvious issues that are likely to arise when creating COM class in Visual Studio and deploying it by professional MSI-authoring tools. It is assumed that the reader is already familiar with the cla…
Monitoring a network: why having a policy is the best policy? Michael Kulchisky, MCSE, MCSA, MCP, VTSP, VSP, CCSP outlines the enormous benefits of having a policy-based approach when monitoring medium and large networks. Software utilized in this v…
If you’ve ever visited a web page and noticed a cool font that you really liked the look of, but couldn’t figure out which font it was so that you could use it for your own work, then this video is for you! In this Micro Tutorial, you'll learn yo…

623 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