WPF组合框绑定空值

时间:2015-01-26 21:59:00

标签: c# wpf combobox

我有一个wpf组合框,它绑定到我的viewmodel中的IEnumberable集合。当首先绑定组合框时,选择空值。在组合框中选择任何其他值时,空值消失。有没有办法在不改变集合的情况下保留空值?

<ComboBox  ItemsSource="{Binding CarCollection}" SelectedItem="{Binding SelectedCar}"
        <ComboBox.ItemTemplate>
                <DataTemplate>
                    <TextBlock  Text="{Binding CarName}" VerticalAlignment="Center"                                 
                </DataTemplate>
            </ComboBox.ItemTemplate>
</ComboBox>

1 个答案:

答案 0 :(得分:2)

不,你不能让null成为一个选项,除非它实际上在列表中。

您当然可以将支持属性设置为null,这应该清除UI选择。如果您需要 null属性,而不修改视图模型中的列表,请考虑使用CompositeCollection。有了它,你可以做类似的事情:

<CollectionViewSource x:Key="ComboBoxItems">
    <CompositeCollection>
       <ListViewItem>Pick a choice</ListViewItem>
       <CollectionContainer Source="{Binding MyCollection}"/>
    </CompositeCollection>
</CollectionViewSource>

可以在MSDN上找到完整的示例。