WPF中,ComboBox值显示问题
WPF中,如果一个下拉框ComboBox是通过绑定XML显示的下拉内容,将其选定的项保存到数据库后,使用SqlDataReader.Read的方法取出该值。问题如何将取出...
WPF中,如果一个下拉框ComboBox是通过绑定XML显示的下拉内容,将其选定的项保存到数据库后,使用SqlDataReader.Read的方法取出该值。问题如何将取出来的值再显示到该ComboBox上去,无法将取出来的值赋值给SelectedValue?
ComboBox里的数据从MXL文件里绑定过来的,第一次是将其选中的值保存到数据库里;第二次是将数值从数据库里读取出来,想让ComboBox来默认显示读取出来的值,不会说赋的值是ComboBox选项里没有的。 展开
ComboBox里的数据从MXL文件里绑定过来的,第一次是将其选中的值保存到数据库里;第二次是将数值从数据库里读取出来,想让ComboBox来默认显示读取出来的值,不会说赋的值是ComboBox选项里没有的。 展开
4个回答
展开全部
首先,产生此问题的原因是你对 wpf 的 MVVM 不了解。
你可以先想想 ComboBox 的 SelectedItem 是什么类型的.(就绑定了 xml 的 ComboBox 而言, 其 SelectedItem 是一个 XmlElement, 你从数据库取出的值 应该是 String 类型). 想清楚此问题就不会有此一问了 (主要是区分 ComboBox 的 项(Item),项所用的模板(Template 或者说项的容器 Container) 之间的关系,这与传统 Form 的模式有很大区别,Form 中的 ComboBox 的 项总是 String 的).
你的问题与我之前回答的有相似性,可以参考下.
http://zhidao.baidu.com/question/146066313.html
你可以先想想 ComboBox 的 SelectedItem 是什么类型的.(就绑定了 xml 的 ComboBox 而言, 其 SelectedItem 是一个 XmlElement, 你从数据库取出的值 应该是 String 类型). 想清楚此问题就不会有此一问了 (主要是区分 ComboBox 的 项(Item),项所用的模板(Template 或者说项的容器 Container) 之间的关系,这与传统 Form 的模式有很大区别,Form 中的 ComboBox 的 项总是 String 的).
你的问题与我之前回答的有相似性,可以参考下.
http://zhidao.baidu.com/question/146066313.html
展开全部
修改SelectedValue 貌似是无效的,你可以更新XML 的内容,然后数据绑定,或者把数据库里的查询结果绑定到ComboBox,如果想要修改选中项,可以使用comboBox1.Items[comboBox1.SelectedIndex] = xxooxxo;
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
可以用SelectedValue,你设置的不生效的原因有可能是,你读出来的数据和你的ComboBox的选项值不一样,先确认一下这个原因.
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
只能赋给 SelectedItem。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询