You can add columns dynamically using the ListViewColumnHeaders.Add()
method, something like:
ListView.ColumnHeaders.Add , , Text1.Text, 2000, lvwColumnLeft
The first two parameters (omitted in my sample) allow you to specify the index (to control the position) and an optional key value to refer to the column later on.