How To Bind a Combobox to a Dictionary in WPF C#

How To Bind a Combobox to a Dictionary in WPF C#

 

回答1

Use a Dictionary<Answer,string> (no need for another class)

AnswerDisplay = new Dictionary<Answer, string>
{
    {Answer.YES, "I will do it"},
    {Answer.NO,  "I will not do it"},
    {Answer.MAYBE, "I might do it"},
};

and bind it to the ComboBox

<ComboBox ItemsSource="{Binding AnswerDisplay}" 
          DisplayMemberPath="Value"
          SelectedValuePath="Key"
          SelectedValue="{Binding SelectedAnswer}"/>

Update

If you want to use your dictionary, then change the binding to

<ComboBox ItemsSource="{Binding AnswerDisplay}" 
          DisplayMemberPath="Value.DisplayDescription"
          SelectedValuePath="Key"
          SelectedValue="{Binding SelectedAnswer}"/>

 

作者:Chuck Lu    GitHub    
posted @   ChuckLu  阅读(131)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 全程不用写代码,我用AI程序员写了一个飞机大战
· DeepSeek 开源周回顾「GitHub 热点速览」
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 记一次.NET内存居高不下排查解决与启示
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了
历史上的今天:
2019-09-19 .prop() vs .attr()
2019-09-19 what should I use .post vs .ajax?
2019-09-19 Path.Combine Method
2017-09-19 numeric and int in sql server
点击右上角即可分享
微信分享提示