代码之家  ›  专栏  ›  技术社区  ›  Eric Bole-Feysot

带有.net core 3.0的ICollectionView

  •  0
  • Eric Bole-Feysot  · 技术社区  · 5 年前

    我正在将我的项目从classic.net迁移到.net core 3.0。

    我添加了几个nuget包试图让它工作,但没有运气。

    微软声称系统组件模型定义icollectionview( https://docs.microsoft.com/en-us/dotnet/api/system.componentmodel.icollectionview?view=netcore-3.0 ),但找不到。

    谢谢你的帮助。

    下面是在.netcore3项目下编译的一个小类:

    class Program
    {
        static void Main(string[] args)
        {
            Console.WriteLine("Hello World!");
            ICollectionView col =new CollectionViewSource().View;
            col.Filter = null;
            col.Refresh();
        }
    }
    

    编辑:

    感谢阿尔法Microsoft.Windows.SDK.Contracts提供了.net核心上的ICollectionView接口,但不幸的是,它并不完整:没有实现筛选和刷新。

    0 回复  |  直到 5 年前
        1
  •  4
  •   Aleksey Shumilov    5 年前

    您需要编辑项目文件 YourProjectName.csproj

    <Project Sdk="Microsoft.NET.Sdk">
    
    <PropertyGroup>
       <TargetFramework>netcoreapp3.0</TargetFramework>
    </PropertyGroup>
    

    对此:

    <Project Sdk="Microsoft.NET.Sdk.WindowsDesktop">
    
    <PropertyGroup>
       <TargetFramework>netcoreapp3.0</TargetFramework>
       <UseWPF>true</UseWPF>
    </PropertyGroup>
    

        2
  •  0
  •   ALFA SantanaFire    5 年前

    .NET Core 3.0+ 您可以安装 Microsoft.Windows.SDK.Contracts 包,其中包括所有受支持的Windows运行时API到Windows10版本1903,并将允许您使用 ICollectionView .

    库和应用程序。

        3
  •  0
  •   Ahmed Msaouri    5 年前

    https://docs.microsoft.com/es-es/dotnet/api/system.windows.data.collectionview?view=netframework-4.8
    

    你可以找到PRecentationFramework.dll在.Net文件夹中,在我的情况下,我有它

        C:\Windows\Microsoft.NET\Framework\v4.0.30319\WPF