CodeModelEventsClass.ElementChanged 事件

此 API 支持 .NET Framework 基础结构,不适合在代码中直接使用。

CodeElement 对象已经更改时引发。

命名空间:  EnvDTE80
程序集:  EnvDTE80(在 EnvDTE80.dll 中)

语法

声明
Public Overridable Event ElementChanged As _dispCodeModelEvents_ElementChangedEventHandler
public virtual event _dispCodeModelEvents_ElementChangedEventHandler ElementChanged
public:
virtual  event _dispCodeModelEvents_ElementChangedEventHandler^ ElementChanged {
    void add (_dispCodeModelEvents_ElementChangedEventHandler^ value);
    void remove (_dispCodeModelEvents_ElementChangedEventHandler^ value);
}
abstract ElementChanged : IEvent<_dispCodeModelEvents_ElementChangedEventHandler,
    EventArgs>
override ElementChanged : IEvent<_dispCodeModelEvents_ElementChangedEventHandler,
    EventArgs>
JScript 不支持事件。

实现

_dispCodeModelEvents_Event.ElementChanged

备注

对于代码中任意给定的更改,只发生一个 ElementChanged 事件。 “最根本的”对象会引发此事件。 例如,如果方法的访问权限被更改,则仅为该 CodeMethod 对象激发 ElementChanged 事件。 但不会为包含它的 CodeClass 对象引发事件。

提示

在进行某些类型的编辑之后,代码模型元素(如类、结构、函数、特性、委托等)的值可能是非确定性的,这意味着不能指望它们的值总是保持不变。 有关更多信息,请参见 使用代码模型查找代码 (Visual Basic) 中的“代码模型元素的值可能会更改”一节。

示例

Dim WithEvents oCodeModelEvents As EnvDTE80.CodeModelEvents
Public Sub OnCodeElementChanged(ByVal Element As EnvDTE.CodeElement, _
  ByVal Change As EnvDTE80.vsCMChangeKind) Handles _
  oCodeModelEvents.ElementChanged
    MsgBox(Element.Name + "(Kind=" + Str(Element.Kind) + ") was _
      changed (change=" + Str(Change) + ").")
End Sub

.NET Framework 安全性

请参见

参考

CodeModelEventsClass 类

EnvDTE80 命名空间

其他资源

如何:编译和运行自动化对象模型代码示例

使用代码模型查找代码 (Visual Basic)

使用代码模型查找代码 (Visual C#)