Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/oop/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 如何从ObservableCollection中删除项目_C#_Oop_Collections_Properties - Fatal编程技术网

C# 如何从ObservableCollection中删除项目

C# 如何从ObservableCollection中删除项目,c#,oop,collections,properties,C#,Oop,Collections,Properties,我有一个叫做数据集的集合。我有一个从数据集中删除项目的方法,但不起作用。有人能帮我吗? 我的财产不好,放什么进去 private void ExecuteRemoveDatasetCommand(DefaultDataset dataset) { Datasets.Remove(dataset); } public ObservableCollection<DefaultDataset> DefaultDatasets {

我有一个叫做数据集的集合。我有一个从数据集中删除项目的方法,但不起作用。有人能帮我吗? 我的财产不好,放什么进去

    private void ExecuteRemoveDatasetCommand(DefaultDataset dataset)
    {
        Datasets.Remove(dataset);
    }   
public ObservableCollection<DefaultDataset> DefaultDatasets
    {
        get
        {
            ObservableCollection<DefaultDataset> defaultDataSet = new ObservableCollection<DefaultDataset>();
            foreach (var data in TemplateSystems.Select(data => data.DefaultDataSets).FirstOrDefault())
            {
                defaultDataSet.Add(data);
            }
            return defaultDataSet;
        }
        set
        {
        }
    }
private void ExecuteRemoveDatasetCommand(DefaultDataset)
{
删除(数据集);
}   
公共可观测收集默认数据集
{
收到
{
ObservableCollection defaultDataSet=新的ObservableCollection();
foreach(TemplateSystems.Select(data=>data.DefaultDataSets.FirstOrDefault()中的var数据)
{
defaultDataSet.Add(数据);
}
返回默认数据集;
}
设置
{
}
}

主要问题是您的默认数据集未实现,因此系统无法找到列表中的元素。

您试图实现什么?从这里我看到,您正在从另一个集合中删除数据集,而不是“DefaultDatasets”?为什么在循环queryable时执行FirstOrDefault?这有点难理解,也许如果你评论你想做什么,或者多写一点代码……我不明白你为什么有一个setter。你为什么写二传?