C# 在将DataGrid绑定到ObservableCollection时,是否可以在不丢失功能的情况下去掉{NewItemPlaceholder}?

C# 在将DataGrid绑定到ObservableCollection时,是否可以在不丢失功能的情况下去掉{NewItemPlaceholder}?,c#,wpf,datagrid,C#,Wpf,Datagrid,我有一个数据网格我绑定到一个可观察集合。网格的配置方式是用户可以添加行(这是所需的行为)。在GUI的其他地方,我将同一个集合绑定为组合框的ItemsSource。在那里,它显示了我不想要的{NewItemPlaceholder} 我发现了一个类似的问题,建议将CanUserAddRows设置为false,但是我需要一个专用的按钮或上下文菜单项来添加一个我觉得不太直观的新行 那么,有没有一种方法可以通过过滤项目资源等方式去除此占位符 后续1 我发现了以下奇怪的行为: 当我直接将组合框的Items

我有一个
数据网格
我绑定到一个
可观察集合
。网格的配置方式是用户可以添加行(这是所需的行为)。在GUI的其他地方,我将同一个集合绑定为
组合框的
ItemsSource
。在那里,它显示了我不想要的
{NewItemPlaceholder}

我发现了一个类似的问题,建议将
CanUserAddRows
设置为
false
,但是我需要一个专用的按钮或上下文菜单项来添加一个我觉得不太直观的新行

那么,有没有一种方法可以通过过滤
项目资源
等方式去除此占位符

后续1

我发现了以下奇怪的行为:

  • 当我直接将组合框的
    ItemsSource
    绑定到可观察的集合时,我得到了
    {newitemsplaceholder}
  • 当我将一个
    CollectionViewSource
    声明为组合框的
    资源时,将其
    Source
    设置为可观察的集合,并依次将我的
    CollectionViewSource
    设置为组合框的
    itemsource
    ,组合框的
    {newitemsplaceholder}
    将消失。我甚至不必指定过滤器

创建并显示测试项目的代码,我们可以在StackOverflow上使用该代码作为参考。根据实际使用情况,将某个东西称为bug可能是一种延伸。我现在使用的是
CollectionViewSource
解决方案,效果很好,但你是对的,我在上面的帖子中删除了关于bug的一行。