Freigeben über


AxHost.AttachInterfaces-Methode

Fügt beim Überschreiben in einer abgeleiteten Klasse Schnittstellen an das zugrunde liegende ActiveX-Steuerelement an.

Namespace: System.Windows.Forms
Assembly: System.Windows.Forms (in system.windows.forms.dll)

Syntax

'Declaration
Protected Overridable Sub AttachInterfaces
'Usage

Me.AttachInterfaces
protected virtual void AttachInterfaces ()
protected:
virtual void AttachInterfaces ()
protected void AttachInterfaces ()
protected function AttachInterfaces ()

Hinweise

Hinweise für Erben Klassen, die AxHost erweitern, müssen diese Methode überschreiben. In einer überschriebenen Version dieser Methode muss die erweiternde Klasse GetOcx aufrufen, um die eigene Schnittstelle abzurufen. In den meisten Fällen darf die GetOcx-Methode nicht vor dem Aufruf dieser Methode aufgerufen werden.

Beispiel

Im folgenden Codebeispiel werden der Konstruktor sowie die SetAboutBoxDelegate-Methode und die AttachInterfaces-Methode einer von AxHost abgeleiteten Klasse überschrieben, die das Masked Edit-ActiveX-Steuerelement von Microsoft umschließt. Für diesen Code ist es erforderlich, dass Sie den generierten Quellcode erstellt haben, indem Sie die Datei AxImp.exe mit der Datei MSMask32.ocx und dem /source-Schalter ausgeführt haben, um die zu bearbeitende Wrapperklasse zu generieren. Dieser Code wird in C#-Syntax angezeigt, da dies die einzige von AxImp.exe ausgegebene Sprache ist.

public AxMaskEdBox()
    :
  base("c932ba85-4374-101b-a56c-00aa003668dc") // The ActiveX control's class identifier.
{
    // Make the AboutBox method the about box delegate.
    this.SetAboutBoxDelegate(new AboutBoxDelegate(AboutBox));
}

public virtual void AboutBox()
{
    // If the instance of the ActiveX control is null when the AboutBox method 
    // is called, raise an InvalidActiveXStateException exception.
    if ((this.ocx == null))
    {
        throw new System.Windows.Forms.AxHost.InvalidActiveXStateException(
          "AboutBox", System.Windows.Forms.AxHost.ActiveXInvokeKind.MethodInvoke);
    }
    // Show the about box if the ActiveX control has one.
    if (this.HasAboutBox)
    {
        this.ocx.AboutBox();
    }
}

protected override void AttachInterfaces()
{
    try
    {
        // Attach the IMSMask interface to the ActiveX control.
        this.ocx = ((MSMask.IMSMask)(this.GetOcx()));
    }
    catch (System.Exception ex)
    {
        System.Console.WriteLine(ex.Message);
    }
}

Plattformen

Windows 98, Windows 2000 SP4, Windows CE, Windows Millennium Edition, Windows Mobile für Pocket PC, Windows Mobile für Smartphone, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition

.NET Framework unterstützt nicht alle Versionen sämtlicher Plattformen. Eine Liste der unterstützten Versionen finden Sie unter Systemanforderungen.

Versionsinformationen

.NET Framework

Unterstützt in: 2.0, 1.1, 1.0

Siehe auch

Referenz

AxHost-Klasse
AxHost-Member
System.Windows.Forms-Namespace
GetOcx