Though I did not understand what was wrong originally, it is working now.
Can you please explain the difference between using  and () and why  was needed in some places and () in others while defining the Control() method?
There are two more things that I want in my ListView –
1) After adding the rows, how to sort the listView by any one column?
2) How to allow clicking the listView header buttons to sort by that column?