XAML和自定义类
可扩展应用程序标记语言(XAML)支持使用任何公共语言运行库(CLR)语言定义自定义类或结构,然后使用XAML标记(包括在同一标记文件中混合使用 Windows Presentation Foundation (WPF)定义的XAML和自定义类的XAML标记)访问该类的功能。本主题讨论自定义类要用作XAML元素时所必须满足的要求。
应用程序或程序集中的自定义类
可以使用两种不同的方法定义XAML中使用的自定义类:在生成主Windows Presentation Foundation (WPF)应用程序的代码隐藏或其他代码中定义,或者在单独的程序集(如用作类库的可执行文件或 DLL)中定义为类。这些方法中的每一种都有特定的优点和缺点。
创建类库的优点是,任何这样的自定义类都可以在许多可能不同的应用程序中共享。单独的类库也使应用程序的版本问题更易控制,而且也简化了在XAML页上创建要用作根元素的类这一过程。
在应用程序中定义自定义类的优点是,此方法是相对轻量的方法,可最大限度减少当引入主可执行文件之外的单独程序集时遇到的部署和测试问题。但是,一个显著的缺点是,不能将同一程序集中定义的类用作XAML页的根元素。
无论是在相同还是不同程序集中定义自定义类,都需要在CLR命名空间和XAML命名空间之间映射这些自定义类才能在XAML中使用它们。
自定义类作为XAML元素的要求
- 类要能够实例化为对象元素,必须满足以下要求:
- 自定义类必须是