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 安全性
- 对直接调用方的完全信任。此成员不能由部分信任的代码使用。有关更多信息,请参见通过部分受信任的代码使用库。