Удаление элементов поля со списком при выборе конкретного элемента - PullRequest
0 голосов
/ 28 августа 2018

У меня есть поле со списком из 4 предметов. Один из пунктов «хорошо», который является строкой. Если этот элемент выбран, то мне нужно удалить все остальные элементы в поле со списком. Как я могу сделать это в XAML? Могу ли я использовать контрольные триггеры?

1 Ответ

0 голосов
/ 28 августа 2018

Вы можете сделать что-то вроде ниже.

В представлении:

<ComboBox ItemsSource="{Binding FilteredLenses}" SelectedItem="{Binding SelectedValue, Mode=TwoWay}" VerticalAlignment="Center" Width="230">
            </ComboBox>

В вашей ViewModel:

private ObservableCollection<string> filteredLenses;
public ObservableCollection<string> FilteredLenses
{
    get
    {
        if (filteredLenses == null)
            filteredLenses = new ObservableCollection<string>();

        return filteredLenses;
    }
    set
    {
        filteredLenses = value;
        OnPropertyChanged("FilteredLenses");
    }
}

public string selectedValue;
public string SelectedValue
{
    get
    {
        return selectedValue;
    }
    set
    {
        if (value == "Okay")
        {
            // This logic can be done in many ways
            FilteredLenses.Clear();
            FilteredLenses.Add("Okay");

            OnPropertyChanged("FilteredLenses");
        }

        selectedValue = value;
        OnPropertyChanged("SelectedValue");
    }
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...