A ListView control is similar to a ListBox but can contain multiple columns. But to add data we need to bind it to an object which has the same data members as the columns of the ListView control.
This is how I have declared the ListView and its columns
<ListView Name="list"> <ListView.View> <GridView> <GridViewColumn Header="Serial No." DisplayMemberBinding="{Binding Serial}" /> <GridViewColumn Header="Name" DisplayMemberBinding="{Binding Name}" /> <GridViewColumn Header="Age" DisplayMemberBinding="{Binding Age}" /> </GridView> </ListView.View> </ListView>
Notice the Binding values. Now I will create a class named Item (you can name it anything you like)
class Item { int serial; string name; int age; public Item(int s, string n, int a) { serial = s; name = n; age = a; } public int Serial { set { serial = value; } get { return serial; } } public string Name { set { name = value; } get { return name; } } public int Age { set { age = value; } get { return age; } } }
The property names of this class matches the binding values. Finally we can add new items:
list.Items.Add( new Item(1, "Ibrahim", 21) ); list.Items.Add( new Item(2, "Sumayyah", 15) ); list.Items.Add( new Item(3, "Yusuf", 20) );
This should work