如何让Xamarin构建过程处理我的XAML文件?

时间:2016-02-29 14:46:49

标签: c# xaml xamarin msbuild

我有两个使用XAML页面的Xamarin.Forms项目。我们称之为ProjectOK和ProjectBroken。

ProjectOK构建正常。 ProjectBroken失败,说找不到 InitializeComponent 。调查(通过将构建输出增加到Normal)显示这是因为ProjectBroken根本不处理我的XAML文件。在ProjectOK的构建输出中,我得到:

_CoreXamlG:
Source: Page1.xaml
Language: C#
AssemblyName: App1
OutputFile obj\Debug\App1.Page1.xaml.g.cs

ProjectBroken不包含此类行。

在解决方案资源管理器中,两个项目中XAML页面的属性完全相同。 Page1.xaml文件设置为:嵌入式资源不复制自定义工具= MSBuild:UpdateDesignTimeXAML 。 Page1.xaml.cs设置为:编译不要复制

打开项目文件,我发现ProjectOK包含:

<Compile Include="Page1.xaml.cs">
      <DependentUpon>Page1.xaml</DependentUpon>
</Compile>

后来:

<ItemGroup>
<EmbeddedResource Include="Page1.xaml">
    <Generator>MSBuild:UpdateDesignTimeXaml</Generator>
    <SubType>Designer</SubType>
</EmbeddedResource>
</ItemGroup>

ProjectBroken不包含对我新创建的Page1.xaml的引用。

即使我手动将上面的行添加到ProjectBroken.csproj文件中,它仍然不会调用XAML编译器。

所以,似乎某些东西在我的解决方案文件夹之外被打破了。有没有人知道这可能是什么,更重要的是 - 我怎么能'重置'它?

0 个答案:

没有答案