ActiveDesignerEventHandler 委托

定义

表示用来处理 ActiveDesignerChanged 事件的方法。Represents the method that will handle the ActiveDesignerChanged event.

public delegate void ActiveDesignerEventHandler(System::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

事件源。The source of the event.

e
ActiveDesignerEventArgs

包含事件数据的 ActiveDesignerEventArgsAn ActiveDesignerEventArgs that contains the event data.

继承
ActiveDesignerEventHandler

示例

下面的示例演示如何注册ActiveDesignerEventHandlerActiveDesignerChanged处理事件。The following example demonstrates registering an ActiveDesignerEventHandler and handling an ActiveDesignerChanged event.

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

注解

当修改当前活动文档时, 将引发事件。ActiveDesignerChangedThe ActiveDesignerChanged event is raised when the currently active document has been modified.

创建 ActiveDesignerEventHandler 委托时,需要标识将要处理该事件的方法。When you create an ActiveDesignerEventHandler delegate, you identify the method that will handle the event. 若要将事件与事件处理程序关联,请将该委托的一个实例添加到事件中。To associate the event with your event handler, add an instance of the delegate to the event. 除非移除了该委托,否则每当发生该事件时就会调用事件处理程序。The event handler is called whenever the event occurs, unless you remove the delegate. 有关事件处理程序委托的详细信息, 请参阅处理和引发事件For more information about event-handler delegates, see Handling and Raising Events.

扩展方法

GetMethodInfo(Delegate)

获取指示指定委托表示的方法的对象。Gets an object that represents the method represented by the specified delegate.

适用于

另请参阅