PropertyDescriptor.SetValue 方法

当在派生类中被重写时,将组件的值设置为一个不同的值。

**命名空间:**System.ComponentModel
**程序集:**System(在 system.dll 中)

语法

声明
Public MustOverride Sub SetValue ( _
    component As Object, _
    value As Object _
)
用法
Dim instance As PropertyDescriptor
Dim component As Object
Dim value As Object

instance.SetValue(component, value)
public abstract void SetValue (
    Object component,
    Object value
)
public:
virtual void SetValue (
    Object^ component, 
    Object^ value
) abstract
public abstract void SetValue (
    Object component, 
    Object value
)
public abstract function SetValue (
    component : Object, 
    value : Object
)

参数

  • component
    具有要进行设置的属性值的组件。
  • value
    新值。

备注

通常,通过反射实现此方法。

此方法按下列顺序自动创建 DesignerTransaction

  1. 该方法调用 IDesignerHost.CreateTransaction 方法创建新的 DesignerTransaction 来表示这些更改。

  2. 该方法调用 IComponentChangeService.OnComponentChanging 方法,以指示事务已经开始,并且即将发生更改。

  3. 该方法将属性重置为此方法的检查顺序确定的值。

  4. 该方法调用 IComponentChangeService.OnComponentChanged 方法来指示已发生更改。

  5. 该方法调用 DesignerTransaction.Commit 来指示事务已完成。

该事务的用途是支持 UndoRedo 功能。

给继承者的说明 当您重写此方法时,它应通过调用您需要实现的适当的“SetMyProperty”方法来设置该属性的值。如果指定的值无效,则该组件将引发一个以前被放过的异常。设计此属性时,应该使“SetMyProperty”方法后面的“GetMyProperty”方法(您已实现)能够在“SetMyProperty”不引发异常的情况下返回传入的值。

平台

Windows 98、Windows 2000 SP4、Windows CE、Windows Millennium Edition、Windows Mobile for Pocket PC、Windows Mobile for Smartphone、Windows Server 2003、Windows XP Media Center Edition、Windows XP Professional x64 Edition、Windows XP SP2、Windows XP Starter Edition

.NET Framework 并不是对每个平台的所有版本都提供支持。有关受支持版本的列表,请参见系统要求

版本信息

.NET Framework

受以下版本支持:2.0、1.1、1.0

.NET Compact Framework

受以下版本支持:2.0、1.0

请参见

参考

PropertyDescriptor 类
PropertyDescriptor 成员
System.ComponentModel 命名空间
PropertyDescriptor 类