我可以在使用 Caliburn.Micro 的同时将 App.xaml 添加回 Xamarin.Forms 项目吗?

Can I add App.xaml back to a Xamarin.Forms project while using Caliburn.Micro?

Caliburn.Micro Xamarin.Forms 示例(设置和功能都说明了 App.cs 的用法,没有随附的 App.xaml。

我想要一个 App.xaml 文件,这样我就可以将应用程序级资源添加到 xaml 中,现在应该在 Xamarin.Forms 中。这可能吗?我该怎么做?

请注意,我之后从未添加过一个,这还没有经过测试,但它应该像这样工作。

App.xaml 后来被引入到 Xamarin.Forms 包和模板中,可能是由于引入了您所指的应用级资源。但基本上,App.xaml 与任何其他 XAML 文件没有什么不同。

添加一个新的 App.xaml 文件,看起来有点像这样:

<?xml version="1.0" encoding="utf-8"?>
<Application xmlns="http://xamarin.com/schemas/2014/forms" xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml" x:Class="YourNamespace.YourClass">
    <Application.Resources>
        <!-- Application resource dictionary -->
    </Application.Resources>
</Application>

请注意,您需要在 x:Class="YourNamespace.YourClass" 属性中提供自己的命名空间。现在在你在这里指定的同一个 class 中,它应该在你的 App.cs 中,确保 class 被标记为 partial 并且 InitializeComponent(); 被调用在构造函数中。

最后,确保您的 App.xaml 文件被标记为 EmbeddedResource 作为构建操作。

事实上,这就是它的全部。

如果您想 link 您的 App.xamlApp.xaml.cs 文件,以便它们在 Visual Studio 中显示为一个节点,请在文本中打开您的 csproj 文件-编辑器并找到 <Compile Include="App.xaml.cs" /> 节点。将其编辑为:

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

虽然这看起来更好,但并非绝对必要。