How to sort the ListView?

I'm using a list view control for a FTP client program. I add all the files to the ListView in Report Style and add pictureA if its a file or PictureB if its a folder. How can I sort the list but first the folders and then the Files just like in Windows Explorer?

thanks
matrix717Asked:
Who is Participating?

Improve company productivity with a Business Account.Sign Up

x
 
aikimarkConnect With a Mentor Commented:
You might be able to accomplish what you want by creating an "invisible" column in the listview, containing a combination of type-descriptor and name characters, and invoking the sort method on this column.

Example:
d_dirname3
d_dirname1
f_filename4
d_dirname2
f_filename1
f_filename3
f_filename2

In this example, the name of the object (dir/file) is prepending with an associated object type descriptor ("d_" and "f_").  Since "d" is less than "f" in the collating sequence, the result of the sort method will result in your desired ordering.
0
 
Richie_SimonettiIT OperationsCommented:
I think populate the list, first with folders and then with files. You don't need to run enumfiles twice, you could use two arrays and populate each one, one with files and other with folders mane in the same "lap".
Hope it helps.
I did try several ideas to order listviews and none was enought.
0
 
matrix717Author Commented:
how can I order an array alphabeticaly?
0
Free Tool: IP Lookup

Get more info about an IP address or domain name, such as organization, abuse contacts and geolocation.

One of a set of tools we are providing to everyone as a way of saying thank you for being a part of the community.

 
raizonCommented:
aikimark,

wouldn't that give you a listing order of

d_dirname1
d_dirname2
d_dirname3
f_filename1
f_filename2
f_filename3
f_filename4

I think you are on the right track however.
I would add a number to the front of your descriptor which will be the order in which they are to be listed.

1d_dirname1
2d_dirname2
3f_filename1
4d_dirname3
5f_filename1
6f_filename2
7f_filename3
8d_dirname4


Just a thought
0
 
amebaCommented:
Add space (" ") to folder names.
0
 
aikimarkCommented:
string data is sorted in left-to-right sequence.

1. all the "d_" items will appear before any "f_" item.
2. the strings (names) within each "group" will appear in their correct alphabetic sequence.

"try it...you'll like it" :-)
(quote from an old Alka Seltzer commercial)
0
 
aikimarkCommented:
Example of what you should see:

d_alongdirectoryname
d_bnatural
d_csharp
f_notadirectory
f_plentyoftheseonyourharddrive
f_seethepatternyet
f_thisisthelastthingtosortinyourlistview
0
 
raizonCommented:
I think I missunderstood what he was wanting.

I thought he was wanting a TreeView but without using the TreeView control.
0
 
matrix717Author Commented:
I repeat, what I want is to sort the files and folders just as Windows Explorer does...

Folder AAA
Folder AAB
Folder CCA
File   AA
File   AB

I want to press the header and that the files an folders of that column get sort on that way...


0
Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.

All Courses

From novice to tech pro — start learning today.