【发布时间】:2015-09-01 01:30:42
【问题描述】:
我在实现了 MVVM 的 WPF 应用程序中有一个组合框。看起来,-
<ComboBox x:Name="cboParent"
SelectedValuePath="FileId"
DisplayMemberPath="FileName"
IsEditable="True"
ItemsSource="{Binding Files}"
MaxDropDownHeight="125"
SelectedValue="{Binding Path=SelectedFile.ParentFileId}"
SelectedItem="{Binding Path=SelectedParentFile, Mode=TwoWay}" Height="26"/>
Files 集合有一个自引用键,即 ParentFileId。现在有时这个 ParentFileId 会为零;意味着没有父文件。在这种情况下,我希望虽然下拉列表将包含所有文件但不会有任何 SelectedItem。
但实际上我将 SelectedFile 作为 ComboBox 中的 SelectedItem。
当 ParentFileId 为 0 时,我可以在不选择任何内容的情况下获取 ComboBox 吗?
(我不想在 FileId 为零的文件集合中添加任何占位符文件。)
【问题讨论】:
-
只是一个想法。为什么不将引用设为可空?那么它将为空而不是零。
-
其实目前的实现方式是这个自引用键不为空。在没有映射的地方,它的值为零。因此,这不是一个选项。
标签: c# wpf mvvm combobox selectedvalue