C# 在项目中使用SDK格式时在设计时加载资源字典

C# 在项目中使用SDK格式时在设计时加载资源字典,c#,.net,wpf,.net-core,C#,.net,Wpf,.net Core,我目前正在将我的项目转换为visual studio的新SDK格式。不幸的是,我不能让设计师工作。过去,我在每个项目中添加了一个app.xaml,其中包含所有与设计时相关的资源。这导致了一些警告,但VisualStudio提供了我所需要的:XAML设计器中的语法完成 切换到SDK格式后,出现错误:\Microsoft.WinFX.targets(225,9):错误MC1002:库项目文件无法指定ApplicationDefinition元素。 因此,我删除了app.xaml文件,但现在我没有语法

我目前正在将我的项目转换为visual studio的新SDK格式。不幸的是,我不能让设计师工作。过去,我在每个项目中添加了一个app.xaml,其中包含所有与设计时相关的资源。这导致了一些警告,但VisualStudio提供了我所需要的:XAML设计器中的语法完成

切换到SDK格式后,出现错误:
\Microsoft.WinFX.targets(225,9):错误MC1002:库项目文件无法指定ApplicationDefinition元素。
因此,我删除了app.xaml文件,但现在我没有语法完成,设计器不再显示我的控件

我尝试的是添加一个资源文件并设置

<Page Include="Properties\DesignTimeResources.xaml">
    <SubType>Designer</SubType>
    <Generator>MSBuild:Compile</Generator>
    <ContainsDesignTimeResources>true</ContainsDesignTimeResources>
</Page>

设计师
MSBuild:编译
真的
在csproj文件中。但是这个技巧不再有效,因为页面无法在csproj文件中定义

微软认为这应该如何运作?是否有任何方法可以在不编辑我的1000个xaml文件的情况下将设计时资源添加到我的项目中

我确实希望避免将此添加到我的每个xaml文件中:

 <UserControl.Resources>
        <ResourceDictionary>
            <ResourceDictionary.MergedDictionaries>
                <ResourceDictionary Source="pack://application:,,,/MyAssembly;component/Resources/ResourceBundle.xaml"/>
            </ResourceDictionary.MergedDictionaries>
        </ResourceDictionary>
    </UserControl.Resources>

这就做到了:

 <ItemGroup>
    <Page Update="Properties\DesignTimeResources.xaml" Condition="'$(DesignTime)'=='true' OR ('$(SolutionPath)'!='' AND Exists('$(SolutionPath)') AND '$(BuildingInsideVisualStudio)'!='true' AND '$(BuildingInsideExpressionBlend)'!='true')">
      <SubType>Designer</SubType>
      <Generator>MSBuild:Compile</Generator>
      <ContainsDesignTimeResources>true</ContainsDesignTimeResources>
    </Page>
  </ItemGroup>

设计师
MSBuild:编译
真的

将其添加到项目文件和my usercontrols将再次在设计时加载。。不幸的是,intellisense仍然不起作用。

有一个GitHub也有同样的问题设计师本身不是问题所在。问题是设计时资源。。