gpt4 book ai didi

wpf - 将 Xaml 编译成 Baml?

转载 作者:行者123 更新时间:2023-12-04 06:13:21 49 4
gpt4 key购买 nike

如何将 xaml 转换为 baml?

谢谢

最佳答案

您可以通过创建引用它的 MSBuild 项目文件来编译 XAML。当您对项目进行编译时(它会创建一个临时 .proj 文件并构建它),这就是 Visual Studio 中“幕后”发生的事情。

一个相当小的项目文件 (xamlcompile.csproj) 是这样的:

<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="3.5" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<PropertyGroup>
<ProductVersion>9.0.30729</ProductVersion>
<SchemaVersion>2.0</SchemaVersion>
<OutputType>library</OutputType>
<TargetFrameworkVersion>v3.5</TargetFrameworkVersion>
<ProjectGuid>{6B8967FF-37B7-43E8-B866-FFD6F13FFC0A}</ProjectGuid>
</PropertyGroup>
<ItemGroup>
<Reference Include="System" />
<Reference Include="System.Core">
<RequiredTargetFramework>3.5</RequiredTargetFramework>
</Reference>
<Reference Include="System.Xml.Linq">
<RequiredTargetFramework>3.5</RequiredTargetFramework>
</Reference>
<Reference Include="System.Data.DataSetExtensions">
<RequiredTargetFramework>3.5</RequiredTargetFramework>
</Reference>
<Reference Include="System.Data" />
<Reference Include="System.Xml" />
<Reference Include="WindowsBase" />
<Reference Include="PresentationCore" />
<Reference Include="PresentationFramework" />
<Reference Include="PresentationFramework.Classic" />
</ItemGroup>
<ItemGroup>
<Page Include="Themes\Generic.xaml">
<Generator>MSBuild:Compile</Generator>
<SubType>Designer</SubType>
</Page>
</ItemGroup>
<Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
</Project>

然后您可以通过运行以下命令生成 BAML 文件:
MSBuild /t:ResolveReferences;MarkupCompilePass1;MarkupCompilePass2 xamlcompile.csproj

这将在 obj\Debug 下创建一个 baml 文件,在上面的示例中,它将是 obj\Debug\Themes\Generic.baml。

希望有帮助。

关于wpf - 将 Xaml 编译成 Baml?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/934945/

49 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com