Partilhar via


ToolStripControlHost.OnUnsubscribeControlEvents(Control) Método

Definição

Cancela a assinatura de eventos do controle hospedado.

protected:
 virtual void OnUnsubscribeControlEvents(System::Windows::Forms::Control ^ control);
protected virtual void OnUnsubscribeControlEvents (System.Windows.Forms.Control control);
abstract member OnUnsubscribeControlEvents : System.Windows.Forms.Control -> unit
override this.OnUnsubscribeControlEvents : System.Windows.Forms.Control -> unit
Protected Overridable Sub OnUnsubscribeControlEvents (control As Control)

Parâmetros

control
Control

O controle com base no qual cancelar a assinatura de eventos.

Exemplos

O exemplo de código a seguir demonstra como cancelar a assinatura de um evento exposto pelo controle hospedado. Este exemplo de código faz parte de um exemplo maior fornecido para a ToolStripControlHost classe.

void OnUnsubscribeControlEvents( System::Windows::Forms::Control^ c )
{
   
   // Call the base method so the basic events are unsubscribed.
   __super::OnUnsubscribeControlEvents( c );
   
   // Cast the control to a MonthCalendar control.
   MonthCalendar^ monthCalendarControl = (MonthCalendar^)c;
   
   // Remove the event.
   monthCalendarControl->DateChanged -= gcnew DateRangeEventHandler( this, &ToolStripMonthCalendar::HandleDateChanged );
}
protected override void OnUnsubscribeControlEvents(Control c)
{
    // Call the base method so the basic events are unsubscribed.
    base.OnUnsubscribeControlEvents(c);

    // Cast the control to a MonthCalendar control.
    MonthCalendar monthCalendarControl = (MonthCalendar) c;

    // Remove the event.
    monthCalendarControl.DateChanged -=
        new DateRangeEventHandler(OnDateChanged);
}
Protected Overrides Sub OnUnsubscribeControlEvents(ByVal c As Control)
    ' Call the base method so the basic events are unsubscribed.
    MyBase.OnUnsubscribeControlEvents(c)

    ' Cast the control to a MonthCalendar control.
    Dim monthCalendarControl As MonthCalendar = _
        CType(c, MonthCalendar)

    ' Remove the event.
    RemoveHandler monthCalendarControl.DateChanged, _
        AddressOf HandleDateChanged

End Sub

Comentários

Substitua o OnUnsubscribeControlEvents método para cancelar a assinatura de eventos inscritos em OnSubscribeControlEvents.

A geração de um evento invoca o manipulador de eventos por meio de um delegado. Para obter mais informações, consulte Manipulação e geração de eventos.

O OnUnsubscribeControlEvents método também permite que classes derivadas manipulem o evento sem anexar um delegado. Essa é a técnica preferencial para manipular o evento em uma classe derivada.

Notas aos Herdeiros

Ao substituir OnUnsubscribeControlEvents(Control) em uma classe derivada, chame o método da OnUnsubscribeControlEvents(Control) classe base para que os delegados registrados recebam o evento.

Aplica-se a