簡體   English   中英

選擇特定項目時移除組合框項目

[英]Combo box items removal upon selection of a particular item

我有一個包含 4 個項目的組合框。 其中一項是“okay”,它是一個字符串。 如果此項目被選中,那么我需要刪除組合框中的所有其他項目。 如何在 XAML 中執行此操作? 我可以使用控制觸發器嗎?

您可以執行以下操作。

在視圖中:

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

在您的視圖模型中:

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");
    }
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM