wpf组合框中的默认值
我有一个列出财政年度的数据绑定组合框。用户从该组合中选择一个值,从“客户”组合框中选择一个值,然后选择该财务年度的客户报告供用户处理。虽然可以处理历史文档,但默认用例是处理刚完成的财政年度的报告,因此我想将组合框设置为默认值(当前)2011/2012,这是财政年度实体的字符串属性 我的xaml:wpf组合框中的默认值,wpf,data-binding,combobox,Wpf,Data Binding,Combobox,我有一个列出财政年度的数据绑定组合框。用户从该组合中选择一个值,从“客户”组合框中选择一个值,然后选择该财务年度的客户报告供用户处理。虽然可以处理历史文档,但默认用例是处理刚完成的财政年度的报告,因此我想将组合框设置为默认值(当前)2011/2012,这是财政年度实体的字符串属性 我的xaml: <ComboBox Canvas.Left="353" Canvas.Top="18" Height="23" Name="cbo
<ComboBox Canvas.Left="353"
Canvas.Top="18"
Height="23"
Name="cboFinancialYear"
Width="120"
DisplayMemberPath="FinancialYear1"
ItemsSource="{Binding}"
SelectedValuePath="FinancialYearID" />;
但是,这似乎没有任何影响,组合框中的选定项是FinancialYear表中的第一年
有人能指出我做错了什么吗?我环顾了一下,但组合框中的大多数默认值实现似乎都是“选择一年”类型的指令文本,而我想实际选择一个默认值 集
cboFinancialYear.SelectedValue=thisYear.FinancialYearID;
使用SelectedValue而不是SelectedItem,我希望这会有所帮助。SelectedItem有一个对ItemsSource对象的引用。如果ItemsSource属于
IEnumerable
类型,则无法将SelectedItem设置为字符串 你的物品来源是什么类型的?@gaurawerma,嗯,很有趣。xaml中应该有一个源属性。我已将其固定在以下位置,但仍不起作用:但仍不起作用我的意思是,您的项目中的实体类型是什么?来源是财务年度。在窗口资源中,xaml:@eticallogics:仍在处理mvvm问题。目前我的xaml代码中有代码。(我是新来的)谢谢伦理学。我认为这将为我指明正确的方向。我应该(可能更早)提到我的GetCurrentFinancialYear方法目前只返回字符串表示形式。如果我把它设置为一个返回实体的查询,那么我应该能够对它进行比较,是吗?好的,我知道我做错了什么。那么,我是否正确地认为(正如我对ethicallogic的评论)我需要获取一个实体并将其粘贴到SelectedItem中,而不是我的字符串中?是的。但是你不应该在你的代码后面写这个逻辑。这打破了MVVM模式。相反,您应该将SelectedItem与viewmodel.yah中的属性绑定。我正试图朝那个方向前进,但我发现所有的图特都不起作用。我想我会让它运行起来,然后重构到优雅。谢谢你的帮助。还没有实现解决方案,但会将两者都标记为答案,因为它们都显示了我做错了什么。