Заполнить ObservableCollection в зависимости от выбранного значения в ComboBox wpf mvvm

У меня есть Combobox который заполняется из коллекции

<ComboBox DisplayMemberPath="Name"
                          ItemsSource="{Binding clients, IsAsync=True}"
                          SelectedItem="{Binding Selected, UpdateSourceTrigger=PropertyChanged, Mode=TwoWay}"
                          Style="{StaticResource ComboBoxStyle}"
                          ItemContainerStyle="{StaticResource ComboBoxItemStyle}"
                          x:Name="Client"/>

И есть другая коллекция, которая должна заполняться в зависимости от выбранного значения в ComboBox. Пробую заполнять так:

protected Client mSelected;
    public Client Selected 
    {
        get => mSelected;
        set
        {
            if (mSelected == null)
                return;
            mSelected = value;
            if (Selected != null)
            {
                Search();
            }
        }
    }
public List<GroupModel> groupModels { get; set; }
public ObservableCollection<Client> clients { get; set; }

public void Search()
    {
        FilteredItems = new List<GroupModel>(Filter(Selected.Name));
    }


    public IEnumerable<GroupModel> Filter(string path)
    {
        for (int i = 0; i < clients.Count; i++)
        {
            if (clients[i].Name == path)
            {
                groupModels = new List<GroupModel>(GetInfo(Path.GetDirectoryName(clients[i].paths[i].DefaultFolder)));
            }
        }

        return groupModels;
    }

        public IEnumerable<GroupModel> GetInfo(string path)
    {
        groupModels = new List<GroupModel>();

        foreach (var item in Directory.GetDirectories(path))
        {
            GroupModel group = new GroupModel()
            {
                Name = new FileInfo(item).Name.Substring(new FileInfo(item).Name.Length - 4),
                items = new List<DecreeModel>(GetDecree(item)),
                IsChecked = false
            };
            CountReg++;
            groupModels.Add(group);
        }
        return groupModels;
    }

Подскажите, что я делаю не так.

public class BaseViewModel : INotifyPropertyChanged
{
    // Событие, которое вызывается, когда какое-либо дочернее свойство меняет свое значение.
    public event PropertyChangedEventHandler PropertyChanged = (sender, e) => { };

    // Необходимо, чтобы вызвать событие <see cref = "PropertyChanged" />
    public void OnPropertyChanget( string name)
    {
        PropertyChanged(this, new PropertyChangedEventArgs(name));
    }
}

Подправил Selected

protected Client mSelected;
    public Client Selected 
    {
        get => mSelected;
        set
        {
            mSelected = value;
            if (mSelected != null)
            {
                Search();
            }
            OnPropertyChanget(nameof(Selected));
        }
    }

Ответы (0 шт):