ConstructorArgumentAttribute 类
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
指定可以使用非无参数构造函数语法来初始化对象,而且由指定名称的属性提供构造信息。 此信息主要用于 XAML 序列化。
public ref class ConstructorArgumentAttribute sealed : Attribute
[System.AttributeUsage(System.AttributeTargets.Property, AllowMultiple=false, Inherited=false)]
public sealed class ConstructorArgumentAttribute : Attribute
[<System.AttributeUsage(System.AttributeTargets.Property, AllowMultiple=false, Inherited=false)>]
type ConstructorArgumentAttribute = class
inherit Attribute
Public NotInheritable Class ConstructorArgumentAttribute
Inherits Attribute
- 继承
- 属性
注解
此属性指定关联的属性可由构造函数参数初始化,如果构造函数用于构造实例,则应忽略 XAML 序列化。 这为参数化构造函数语法提供了更好的往返表示形式,而不是无参数构造函数实例化以及特定属性。
框架可能支持保留标记扩展用法并重建它们,而不是依赖 ProvideValue
对象树中的输出进行序列化。 在这种情况下,在序列化期间, ConstructorArgumentAttribute 该信息可用于生成典型标记扩展用法的准确表示形式。 有关标记扩展的详细信息,请参阅 Markup Extensions for XAML Overview。
为了对 ConstructorArgumentAttribute 属性有效,类型的公共非无参数构造函数必须仅支持一个参数。 参数的名称必须与读/写属性相对应。 属性必须具有其他可序列化性。 可以使用此属性创建构造函数中参数的名称与 属性之间的对应关系。 具体而言,将此属性应用于连接读/写属性的属性级定义。
ConstructorArgumentAttribute在未解析为类型后备的情况下ArgumentName,或者应用于没有相应构造参数和 arity 的类型时,使用者可能会引发 。
在早期版本的 .NET Framework中,此类存在于特定于 WPF 的程序集 WindowsBase 中。 在 .NET Framework 4 中, ConstructorArgumentAttribute 位于 System.Xaml 程序集中。 有关详细信息,请参阅 Types Migrated from WPF to System.Xaml。
WPF 用法说明
有关标记扩展和 WPF 的详细信息,请参阅 标记扩展和 WPF XAML。
构造函数
ConstructorArgumentAttribute(String) |
初始化 ConstructorArgumentAttribute 类的新实例。 |
属性
ArgumentName |
获取将初始化关联的属性的构造函数的 name 参数。 |
TypeId |
在派生类中实现时,获取此 Attribute 的唯一标识符。 (继承自 Attribute) |
方法
Equals(Object) |
返回一个值,该值指示此实例是否与指定的对象相等。 (继承自 Attribute) |
GetHashCode() |
返回此实例的哈希代码。 (继承自 Attribute) |
GetType() |
获取当前实例的 Type。 (继承自 Object) |
IsDefaultAttribute() |
在派生类中重写时,指示此实例的值是否是派生类的默认值。 (继承自 Attribute) |
Match(Object) |
当在派生类中重写时,返回一个指示此实例是否等于指定对象的值。 (继承自 Attribute) |
MemberwiseClone() |
创建当前 Object 的浅表副本。 (继承自 Object) |
ToString() |
返回表示当前对象的字符串。 (继承自 Object) |
显式接口实现
_Attribute.GetIDsOfNames(Guid, IntPtr, UInt32, UInt32, IntPtr) |
将一组名称映射为对应的一组调度标识符。 (继承自 Attribute) |
_Attribute.GetTypeInfo(UInt32, UInt32, IntPtr) |
检索对象的类型信息,然后可以使用该信息获取接口的类型信息。 (继承自 Attribute) |
_Attribute.GetTypeInfoCount(UInt32) |
检索对象提供的类型信息接口的数量(0 或 1)。 (继承自 Attribute) |
_Attribute.Invoke(UInt32, Guid, UInt32, Int16, IntPtr, IntPtr, IntPtr, IntPtr) |
提供对某一对象公开的属性和方法的访问。 (继承自 Attribute) |