关于wpf:.baml文件是什么?

What is .baml file?

什么是.baml文件,并且此文件的用途是什么?
谁创建此文件?


已编译的XAML文件。

维基百科说:

A XAML file can be compiled into a
.baml (Binary XAML) file, which may be
inserted as a resource into a .NET
Framework assembly. At run-time, the
framework engine extracts the .baml
file from assembly resources, parses
it, and creates a corresponding WPF
visual tree or workflow.


.baml =二进制应用程序标记文件,已编译的XAML文件。


BAML形式是WPF XAML实现使用的XAML的优化形式。从某种意义上说,它是经过优化的,它将内部查找和令牌用于常用的类型或成员。该优化可用作实现细节,可以解决涉及XAML的WPF应用程序场景的package大小和加载时间。有关Msdn

的完整主题


BAML的目的仅在于检查生成的WPF控件在其属性中是否具有正确的值。编译的XAML还具有其自动生成的* .cs代码。您可以在您的app \\\\\\\\ DEBUG \\\\\\\\ OBJ目录中查看。每个XAML文件都生成了CS。它的名称是XAMLfileName.g.cs,其中g表示生成。