DefaultInitializer 类

用于在设计器中配置新对象。

继承层次结构

System.Object
  Microsoft.Windows.Design.Features.FeatureProvider
    Microsoft.Windows.Design.Model.DefaultInitializer

命名空间:  Microsoft.Windows.Design.Model
程序集:  Microsoft.Windows.Design.Interaction(在 Microsoft.Windows.Design.Interaction.dll 中)

语法

声明
Public MustInherit Class DefaultInitializer _
    Inherits FeatureProvider
public abstract class DefaultInitializer : FeatureProvider
public ref class DefaultInitializer abstract : public FeatureProvider
[<AbstractClass>]
type DefaultInitializer =  
    class
        inherit FeatureProvider
    end
public abstract class DefaultInitializer extends FeatureProvider

DefaultInitializer 类型公开以下成员。

构造函数

  名称 说明
受保护的方法 DefaultInitializer 初始化 DefaultInitializer 类的新实例。

页首

方法

  名称 说明
公共方法 Equals 确定指定的 Object 是否等于当前的 Object。 (继承自 Object。)
受保护的方法 Finalize 允许对象在“垃圾回收”回收之前尝试释放资源并执行其他清理操作。 (继承自 Object。)
公共方法 GetHashCode 用作特定类型的哈希函数。 (继承自 Object。)
公共方法 GetType 获取当前实例的 Type。 (继承自 Object。)
公共方法 InitializeDefaults(ModelItem) 为指定项初始化默认值。
公共方法 InitializeDefaults(ModelItem, EditingContext) 使用所提供的编辑上下文为指定项初始化默认值。
受保护的方法 MemberwiseClone 创建当前 Object 的浅表副本。 (继承自 Object。)
公共方法 ToString 返回表示当前对象的字符串。 (继承自 Object。)

页首

备注

当用户从工具箱向设计图面添加对象时将调用 DefaultInitializer 扩展。 从 DefaultInitializer 类派生,以便为对象配置默认初始值。 例如,您可能向一个按钮控件添加一些默认内容或者将面板的宽度和高度设置为常量值,以便当它添加到设计图面时不折叠为零大小。 如果从 Toolbox 创建,该元素的属性值会显示在 XAML 视图中。

提示

不要在元素的构造函数中设置默认初始值。 设计器可能不会调用构造函数,在此情况下,默认初始值不会在设计时设置。 相反,使用 DefaultInitializer 类或 ClearValue 方法来设置默认初始值。

示例

下面的代码示例演示如何重写 InitializeDefaults 方法,以便将 Button 控件的 Content 属性的默认值设置为“Button”(按钮)。

Imports System
Imports Microsoft.Windows.Design.Model
Imports Microsoft.Windows.Design.Features

<Feature(GetType(ButtonDefaults))>  _
Public Class DemoButton
End Class

Class ButtonDefaults
    Inherits DefaultInitializer

    Public Overrides Sub InitializeDefaults(ByVal item As ModelItem) 
        item.Content.SetValue("Button")

    End Sub
End Class
using System;

using Microsoft.Windows.Design.Model;
using Microsoft.Windows.Design.Features;

namespace DemoControlLibrary.VisualStudio.Design
{
    [Feature(typeof(ButtonDefaults))]
    public class DemoButton { }

    class ButtonDefaults : DefaultInitializer
    {
        public override void InitializeDefaults(ModelItem item)
        {
            item.Content.SetValue("Button");
        }
    }
}

线程安全

此类型的任何公共 static(在 Visual Basic 中为 Shared) 成员都是线程安全的。但不保证所有实例成员都是线程安全的。

请参见

参考

Microsoft.Windows.Design.Model 命名空间

ModelItem

FeatureProvider

ToolboxBrowsableAttribute

其他资源

WPF 设计器扩展性