C# 将空值或空值添加到列表顶部的组合框中

C# 将空值或空值添加到列表顶部的组合框中,c#,mvvm,combobox,C#,Mvvm,Combobox,我希望我的组合框的第一个值为空,以便用户可以清除他们以前的选择。组合框绑定到ViewModel中的实体。那么我如何添加第一个值呢。我可以使用组合框。惰性(0,新实体),但这是正确的方法吗 这是为了搜索:默认情况下,组合框没有选择,搜索将找到所有内容。如果他们选择了一个项目,搜索将被过滤。因为您的ViewModel负责准备要由视图显示的数据,ViewModel应该在集合的开头添加空元素,然后将其绑定到组合框。我的第一个想法是向ViewModel添加一个只读属性IEnumerable myDataP

我希望我的组合框的第一个值为空,以便用户可以清除他们以前的选择。组合框绑定到ViewModel中的实体。那么我如何添加第一个值呢。我可以使用
组合框。惰性(0,新实体)
,但这是正确的方法吗


这是为了搜索:默认情况下,组合框没有选择,搜索将找到所有内容。如果他们选择了一个项目,搜索将被过滤。

因为您的ViewModel负责准备要由视图显示的数据,ViewModel应该在集合的开头添加空元素,然后将其绑定到组合框。

我的第一个想法是向ViewModel添加一个只读属性
IEnumerable myDataPlusAnEmptyRow
。此属性的getter首先生成一个空行,然后生成“真实数据”的结果。然后我将这个属性绑定到combobox,这就是我使用它的基本方式。我刚刚插入了一个新实体并在VM中处理了搜索。新实体的属性都是空的,所以我只需检查并相应地搜索。