<p>I am working in Visual Basic 6 and need to sort by multiple columns in a ListView.  For example, sorting a list of music tracks by artist, then album, then track number.  As far as I know, VB6 does not support this out of the box.  Here are the suggestions I have already heard:</p>

<ul>
<li>Sort the data in a SQL table first and display the data in the resulting order</li>
<li>Sort the data in an ADO recordset object in memory</li>
<li>Sort by the primary column and then perform a sort algorithm on the items, moving them around into the correct positions manually</li>
</ul>

<p>Does anyone have experience with multiple-column sorting in VB6 who could lend advice?</p>

[{'answer_id': 57225, 'author': 'rpetrich', 'author_id': 4007, 'author_profile': 'https://Stackoverflow.com/users/4007', 'pm_score': 1, 'selected': False, 'text': '<p>You can try sorting using the Windows API and callbacks: <a href="http://vbnet.mvps.org/index.html?code/callback/lvsortcallback.htm" rel="nofollow noreferrer">Link</a></p>\n\n<p>Alternatively, you could try switching to a <a href="http://www.vbaccelerator.com/home/VB/Code/Controls/ListView/article.asp" rel="nofollow noreferrer">vbAccelerator ListView</a>; I highly recommend it.</p>\n'}, {'answer_id': 226949, 'author': 'DJ.', 'author_id': 10492, 'author_profile': 'https://Stackoverflow.com/users/10492', 'pm_score': 3, 'selected': True, 'text': '<p>I would create a hidden column in the listview that concatenates those three columns and sort by that</p>\n'}]
['https://Stackoverflow.com/questions/45716', 'https://Stackoverflow.com', 'https://Stackoverflow.com/users/1214/']