ActiveDesignerEventHandler 委托
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
表示用来处理 ActiveDesignerChanged 事件的方法。
public delegate void ActiveDesignerEventHandler(System::Object ^ sender, ActiveDesignerEventArgs ^ e);
public delegate void ActiveDesignerEventHandler(object sender, ActiveDesignerEventArgs e);
public delegate void ActiveDesignerEventHandler(object? sender, ActiveDesignerEventArgs e);
type ActiveDesignerEventHandler = delegate of obj * ActiveDesignerEventArgs -> unit
Public Delegate Sub ActiveDesignerEventHandler(sender As Object, e As ActiveDesignerEventArgs)
参数
- sender
- Object
事件源。
包含事件数据的 ActiveDesignerEventArgs。
示例
以下示例演示如何注册 ActiveDesignerEventHandler 并处理 ActiveDesignerChanged 事件。
public:
void LinkActiveDesignerEvent( IDesignerEventService^ eventService )
{
// Registers an event handler for the ActiveDesignerChanged event.
eventService->ActiveDesignerChanged += gcnew ActiveDesignerEventHandler( this, &MiscCompModSamples::ActiveDesignerEventHandlerExample::OnActiveDesignerEvent );
}
private:
void OnActiveDesignerEvent( Object^ /*sender*/, ActiveDesignerEventArgs^ e )
{
// Displays changed designer information on the console.
if ( e->NewDesigner->RootComponent->Site != nullptr )
{
Console::WriteLine( "Name of the component of the new active designer: {0}", e->NewDesigner->RootComponent->Site->Name );
}
Console::WriteLine( "Type of the component of the new active designer: {0}", e->NewDesigner->RootComponentClassName );
if ( e->OldDesigner->RootComponent->Site != nullptr )
{
Console::WriteLine( "Name of the component of the previously active designer: {0}", e->OldDesigner->RootComponent->Site->Name );
}
Console::WriteLine( "Type of the component of the previously active designer: {0}", e->OldDesigner->RootComponentClassName );
}
public void LinkActiveDesignerEvent(IDesignerEventService eventService)
{
// Registers an event handler for the ActiveDesignerChanged event.
eventService.ActiveDesignerChanged += new ActiveDesignerEventHandler(this.OnActiveDesignerEvent);
}
private void OnActiveDesignerEvent(object sender, ActiveDesignerEventArgs e)
{
// Displays changed designer information on the console.
if( e.NewDesigner.RootComponent.Site != null )
Console.WriteLine("Name of the component of the new active designer: "+e.NewDesigner.RootComponent.Site.Name);
Console.WriteLine("Type of the component of the new active designer: "+e.NewDesigner.RootComponentClassName);
if( e.OldDesigner.RootComponent.Site != null )
Console.WriteLine("Name of the component of the previously active designer: "+e.OldDesigner.RootComponent.Site.Name);
Console.WriteLine("Type of the component of the previously active designer: "+e.OldDesigner.RootComponentClassName);
}
Public Sub LinkActiveDesignerEvent(ByVal eventService As IDesignerEventService)
' Registers an event handler for the ActiveDesignerChanged event.
AddHandler eventService.ActiveDesignerChanged, AddressOf Me.OnActiveDesignerEvent
End Sub
Private Sub OnActiveDesignerEvent(ByVal sender As Object, ByVal e As ActiveDesignerEventArgs)
' Displays changed designer information on the console.
If (e.NewDesigner.RootComponent.Site IsNot Nothing) Then
Console.WriteLine(("Name of the component of the new active designer: " + e.NewDesigner.RootComponent.Site.Name))
End If
Console.WriteLine(("Type of the component of the new active designer: " + e.NewDesigner.RootComponentClassName))
If (e.OldDesigner.RootComponent.Site IsNot Nothing) Then
Console.WriteLine(("Name of the component of the previously active designer: " + e.OldDesigner.RootComponent.Site.Name))
End If
Console.WriteLine(("Type of the component of the previously active designer: " + e.OldDesigner.RootComponentClassName))
End Sub
注解
修改 ActiveDesignerChanged 当前活动文档时,将引发 该事件。
创建 ActiveDesignerEventHandler 委托时,需要标识将要处理该事件的方法。 若要将事件与事件处理程序关联,请将该委托的一个实例添加到事件中。 除非移除了该委托,否则每当发生该事件时就会调用事件处理程序。 有关事件处理程序委托的详细信息,请参阅 处理和引发事件。
扩展方法
GetMethodInfo(Delegate) |
获取指示指定委托表示的方法的对象。 |