首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >为Skia WPF设置Uno

为Skia WPF设置Uno
EN

Stack Overflow用户
提问于 2020-10-21 14:15:50
回答 1查看 687关注 0票数 0

我在使用Skia/WPF运行时用Uno编译我的项目时遇到了问题。我会使用UWP,但我需要一些UWP限制的硬件访问权限。这是我的.csproj文件,从repo中的Skia WPF示例和来自Uno Calculator的GTK项目松散地粘贴在一起:

代码语言:javascript
复制
<Project Sdk="MSBuild.Sdk.Extras/2.0.54">

    <PropertyGroup>
        <OutputType>Exe</OutputType>
        <TargetFrameworks>net472;netcoreapp3.1</TargetFrameworks>
        <UseWPF>true</UseWPF>
        <Platforms>AnyCPU;x86;x64</Platforms>
        <UnoSourceGeneratorUseGenerationHost>true</UnoSourceGeneratorUseGenerationHost>
        <UnoSourceGeneratorUseGenerationController>false</UnoSourceGeneratorUseGenerationController>
    </PropertyGroup>

    <ItemGroup Condition="'$(TargetFramework)'=='net472'">
        <Reference Include="System" />
        <Reference Include="System.Data" />
        <Reference Include="System.Xml" />
        <Reference Include="Microsoft.CSharp" />
        <Reference Include="System.Core" />
        <Reference Include="System.Xml.Linq" />
        <Reference Include="System.Data.DataSetExtensions" />
        <Reference Include="System.Net.Http" />
        <Reference Include="System.Xaml">
            <RequiredTargetFramework>4.0</RequiredTargetFramework>
        </Reference>
        <Reference Include="WindowsBase" />
        <Reference Include="PresentationCore" />
        <Reference Include="PresentationFramework" />
    </ItemGroup>

    <ItemGroup>
        <PackageReference Include="Uno.SourceGenerationTasks" Version="3.0.0-dev.16" />
        <PackageReference Include="Uno.UI.Skia.Wpf" Version="3.2.0-dev.206" />
        <PackageReference Include="Microsoft.Extensions.Logging.Console" Version="1.1.1" />
        <PackageReference Include="Microsoft.Extensions.Logging.Filter" Version="1.1.1" />
    </ItemGroup>


    <Import Project="..\UiProject.Shared\UiProject.Shared.projitems" Label="Shared" />
</Project>

我收到以下错误:

代码语言:javascript
复制
1>------ Build started: Project: UiProject.Skia.Wpf, Configuration: Debug x86 ------
1><repo>\UiProject.Skia.Wpf\UiProject.Skia.Wpf.csproj : warning NU1701: Package 'SkiaSharp.Views 2.80.0' was restored using '.NETFramework,Version=v4.6.1, .NETFramework,Version=v4.6.2, .NETFramework,Version=v4.7, .NETFramework,Version=v4.7.1, .NETFramework,Version=v4.7.2, .NETFramework,Version=v4.8' instead of the project target framework '.NETCoreApp,Version=v3.1'. This package may not be fully compatible with your project.
1><repo>\UiProject.Skia.Wpf\UiProject.Skia.Wpf.csproj : warning NU1701: Package 'SkiaSharp.Views 2.80.0' was restored using '.NETFramework,Version=v4.6.1, .NETFramework,Version=v4.6.2, .NETFramework,Version=v4.7, .NETFramework,Version=v4.7.1, .NETFramework,Version=v4.7.2, .NETFramework,Version=v4.8' instead of the project target framework '.NETCoreApp,Version=v3.1'. This package may not be fully compatible with your project.
1><repo>\UiProject.Shared\App.xaml.cs(25,19,25,22): error CS0263: Partial declarations of 'App' must not specify different base classes
1><repo>\UiProject.Shared\MainPage.xaml.cs(24,33,24,41): error CS0263: Partial declarations of 'MainPage' must not specify different base classes
1><repo>\UiProject.Shared\App.xaml.cs(48,33,48,43): error CS0115: 'App.OnLaunched(LaunchActivatedEventArgs)': no suitable method found to override
1>Done building project "UiProject.Skia.Wpf.csproj" -- FAILED.
1><repo>\UiProject.Shared\App.xaml.cs(25,19,25,22): error CS0263: Partial declarations of 'App' must not specify different base classes
1><repo>\UiProject.Shared\MainPage.xaml.cs(24,33,24,41): error CS0263: Partial declarations of 'MainPage' must not specify different base classes
1><repo>\UiProject.Shared\App.xaml.cs(48,33,48,43): error CS0115: 'App.OnLaunched(LaunchActivatedEventArgs)': no suitable method found to override
1>Done building project "UiProject.Skia.Wpf.csproj" -- FAILED.
========== Build: 0 succeeded, 1 failed, 4 up-to-date, 0 skipped ==========

看起来XAML是用.NET的程序集编译的,但代码是用Uno的程序集编译的。我不确定如何解决这个问题。是否有任何实际的Skia WPF示例可以参考,即使用NuGet引用?

EN

回答 1

Stack Overflow用户

发布于 2020-10-21 15:57:41

不要担心Visual Studio模板,它已经过时了。取而代之的是,使用dotnet new模板,将生成正确的项目。请参阅VSCode setup instructions

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/64457661

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档