Доброе время суток.
На главной aорме есть ListView, который отображает список записей из ViewModel:
<Window.DataContext>
<vmMain:VM_Main/>
</Window.DataContext>
.....
<ListView Grid.Column="0" Name="ProjectsList" ItemsSource="{Binding Path=Projects}"
SelectedItem="{Binding SelectedProject , Mode=TwoWay}">
<ListView.InputBindings>
<MouseBinding Command="{Binding Path=OpenProject}" MouseAction="LeftDoubleClick" />
</ListView.InputBindings>
<ListView.View>
<GridView>
<GridView.Columns>
<GridViewColumn Header="№ Заказа" DisplayMemberBinding="{Binding Path=Number}"></GridViewColumn>
<GridViewColumn Header="КД" Width="170" DisplayMemberBinding="{Binding Path=KD}"></GridViewColumn>
<GridViewColumn Header="Наименование" Width="500" DisplayMemberBinding="{Binding Path=Name}"></GridViewColumn>
<GridViewColumn Header="Примечания" Width="200" DisplayMemberBinding="{Binding Path=Notes}"></GridViewColumn>
<GridViewColumn Header="Срок изготовления" Width="200" DisplayMemberBinding="{Binding Path=ProductionDate}"></GridViewColumn>
<GridViewColumn Header="Исполнитель" Width="300" DisplayMemberBinding="{Binding Path=Implementers, ValidatesOnExceptions=False, Converter={StaticResource ImplementerConverter}}"></GridViewColumn>
</GridView.Columns>
</GridView>
</ListView.View>
</ListView>
Вот сама модель:
public class VM_Main : VM_Base
{
private VM_Project _selectedProject;
public VM_Main()
{
LoadProjects();
}
public ObservableCollection<VM_Project> Projects { get; set; } = new ObservableCollection<VM_Project>();
public ICommand OpenProject
{
get
{
return new DelegateCommand(obj =>
{
VM_Project vProject = SelectedProject;
ProjectInfoView view = new ProjectInfoView();
view.DataContext = vProject;
view.ShowDialog();
});
}
}
После заполнения ListView даблкликаю по все области ListView и срабатывает один раз на 50, по некоторым строкам, никак не могу понять в чём проблема. Что не так описал?