簡體   English   中英

WPF綁定到字典時以編程方式設置組合框所選項目

[英]wpf programatically set combobox selected item when bound to dictionary

我有一個組合框,該組合框必做字典

Dictionary<String, myClass> boxItems;

組合框具有以下dataTemplate:

<DataTemplate>
    <TextBlock Text="{Binding Path=Key}"></TextBlock>
</DataTemplate>

這對於加載值和獲取所選值的效果很好,但是我無法從代碼隱藏中弄清楚如何設置所選值。

有指針嗎?

我嘗試將selectedItem和selectedValue設置為Key(我知道它在字典中),但是在加載頁面時,組合框沒有選擇任何內容。

將此添加到您的組合框

<ComboBox SelectedItem="{Binding SelectedBoxItem}"/>

並在實現INotifyPropertyChanged的類中使用此方法:

private myClass _selectedBoxItem;
public myClass SelectedBoxItem
{
    get { return _selectedBoxItem; }
    set
    {
        _selectedBoxItem = value;
        OnPropertyChanged("SelectedBoxItem");
    }
}

您需要使用要選擇的密鑰創建一個KeyValuePair。

您可以執行以下操作:

 myCombo.SelectedItem = new KeyValuePair<string, int>("myKey", boxItems["myKey"]);

暫無
暫無

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

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