Показать результат в таблице данных в зависимости от выбранного значения поля со списком
привет,
я столкнулся с проблемой я не могу решить я искал много, но оно не работает, я, используя шаблон MVVM я успешно загружены все сведения о сотруднике в моем DataGrid и у меня есть поле со списком загрузки его с пола, чтобы отфильтровать строки DataGrid с пола, но DataGrid не обновляется, чтобы показать новый список , я Inotifychangedproperty но это бесполезно я, показывая мой код, чтобы мне советы
Что я уже пробовал:
public EditaEmployeesViewModel() { SelectionChangedCommand = new RelayCommand(cbGenderSelectedChanged); _EmployeeList = new ObservableCollection<Model.Employees> (DataAccess.EmplyeeDatabaseLayer.GetEmployeeFromDataBase()); _GenderList = new ObservableCollection<Model.Gender> (DataAccess.GenderDataBaseLayer.GetGenderFromDataBase()); } ObservableCollection<Model.Employees> _EmployeeList; ObservableCollection<Model.Gender> _GenderList; public RelayCommand SelectionChangedCommand { get; set; } void cbGenderSelectedChanged(object parameter) { _EmployeeList = new ObservableCollection<model.employees> (DataAccess.EmplyeeDatabaseLayer.GetEmployeesWithGenderID(SelectedGenderID)); } public ObservableCollection<model.employees> EmployeeList { get { return _EmployeeList; } set { _EmployeeList = value; Notifypropertychange("EmployeeList"); } } public ObservableCollection<model.gender> GenderList { get { return _GenderList; } set { _GenderList = value; Notifypropertychange("GenderList"); } } public event PropertyChangedEventHandler PropertyChanged; private void Notifypropertychange(string propertyName) { if (PropertyChanged != null) { PropertyChanged(this, new PropertyChangedEventArgs(propertyName)); } }
вот мой combobox и datagrid
<ComboBox ItemsSource="{Binding GenderList,UpdateSourceTrigger=Explicit}" DisplayMemberPath="GenderName" SelectedValuePath="ID" Grid.Column="1" Name="cbGender" SelectedValue="{Binding SelectedGenderID}" IsSynchronizedWithCurrentItem="True" > <i:Interaction.Triggers> <i:EventTrigger EventName="SelectionChanged"> <i:InvokeCommandAction Command="{Binding SelectionChangedCommand}"/> </i:EventTrigger> </i:Interaction.Triggers> </ComboBox> <DataGrid Grid.Row="2" AutoGenerateColumns="False" CanUserAddRows="False" SelectedItem="{Binding SelectedEmployee}" ItemsSource="{Binding EmployeeList,UpdateSourceTrigger=PropertyChanged}" SelectionMode="Single" SelectedIndex="{Binding SelectedIndex}" IsSynchronizedWithCurrentItem="True">