Tanx Christian for your reply.let me post some parts of my code:
//here is the part when i fill up my listview:
DataSet da = new DataSet();
connRead.Fill(da);
listView.DataContext = da.Tables[0];
//this part is for when i want to get my items value:
ListViewItem container = null;
for (int i = 0; i < listView.Items.Count;i++ )
{
container = listView.ItemContainerGenerator.ContainerFromIndex(i) as ListViewItem;
if (container != null)//here for i = 3 and onward i get null value
{
...
}
this is my xaml part:
<ListView x:Name="listView" Height="202" ItemsSource="{Binding}" SelectionChanged="listView_SelectionChanged" HorizontalAlignment="Left" Margin="20,84,0,0" VerticalAlignment="Top" Width="435" IsSynchronizedWithCurrentItem="{x:Null}" DataContext="{Binding}">
<ListView.ItemTemplate>
<DataTemplate>
<Grid x:Name="grid">
<Grid.RowDefinitions>
<RowDefinition Height="Auto"/>
<RowDefinition Height="Auto"/>
<RowDefinition Height="50"/>
<RowDefinition Height="Auto"/>
<RowDefinition Height="Auto"/>
</Grid.RowDefinitions>
<Grid.ColumnDefinitions>
<ColumnDefinition/>
<ColumnDefinition/>
<ColumnDefinition/>
<ColumnDefinition/>
</Grid.ColumnDefinitions>
<Image x:Name="image1" Width="70" Height="110" Grid.Row="1" Grid.Column="1" Source="{Binding PhotoName}"></Image>
<Label x:Name="email" Grid.Row="0" Grid.Column="2" Content="{Binding Email}"></Label>
<Label x:Name="name" Grid.Row="1" Grid.Column="2" Content="{Binding Name}"></Label>
<CheckBox x:Name="chB" Grid.Row="0" Grid.Column="0" ></CheckBox>
</Grid>
</DataTemplate>
</ListView.ItemTemplate>
</ListView>