AxHost.SetAboutBoxDelegate(AxHost+AboutBoxDelegate) AxHost.SetAboutBoxDelegate(AxHost+AboutBoxDelegate) AxHost.SetAboutBoxDelegate(AxHost+AboutBoxDelegate) AxHost.SetAboutBoxDelegate(AxHost+AboutBoxDelegate) Method

정의

ShowAboutBox() 메서드를 호출하여 ActiveX 컨트롤의 정보 대화 상자를 표시합니다.Calls the ShowAboutBox() method to display the ActiveX control's About dialog box.

protected:
 void SetAboutBoxDelegate(System::Windows::Forms::AxHost::AboutBoxDelegate ^ d);
protected void SetAboutBoxDelegate (System.Windows.Forms.AxHost.AboutBoxDelegate d);
member this.SetAboutBoxDelegate : System.Windows.Forms.AxHost.AboutBoxDelegate -> unit
Protected Sub SetAboutBoxDelegate (d As AxHost.AboutBoxDelegate)

매개 변수

예제

다음 코드 예제에서는 생성자를 재정의 하며 SetAboutBoxDelegateAttachInterfaces 의 메서드는 AxHost Microsoft 마스킹된 편집 ActiveX 컨트롤을 래핑하는 클래스를 파생 합니다.The following code example overrides the constructor, and the SetAboutBoxDelegate and AttachInterfaces methods of an AxHost derived class that wraps the Microsoft Masked Edit ActiveX Control. 이 코드를 실행 하려면 MSMask32.ocx 파일에서 AxImp.exe를 실행 하 여 생성된 된 소스 코드를 만든를 /source 편집할 래퍼 클래스를 생성 하는 스위치입니다.This code requires that you have created the generated source code by running the AxImp.exe on the MSMask32.ocx file with the /source switch to generate the wrapper class to be edited. 이 코드는 AxImp.exe에서 유일한 언어 출력 하는 C# 구문 으로만 표시 됩니다.This code is only shown in C# syntax because that is the only language output by the AxImp.exe.

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);
    }
}

설명

합니다 SetAboutBoxDelegate 메서드를 처리 하기 위해 파생된 클래스에서는 ShowAboutBox 대리자를 연결 하지 않고 메서드.The SetAboutBoxDelegate method also allows derived classes to handle the ShowAboutBox method without attaching a delegate. 이 처리를 위한 기본 방법은 ShowAboutBox 파생된 클래스에서 메서드.This is the preferred technique for handling the ShowAboutBox method in a derived class.

상속자 참고

재정의 하는 경우 SetAboutBoxDelegate(AxHost+AboutBoxDelegate) 파생된 클래스에서 사용할 기본 클래스를 호출 해야 SetAboutBoxDelegate(AxHost+AboutBoxDelegate) 등록 된 대리자 메서드를 수신 합니다 ShowAboutBox() 메서드.When overriding SetAboutBoxDelegate(AxHost+AboutBoxDelegate) in a derived class, be sure to call the base class's SetAboutBoxDelegate(AxHost+AboutBoxDelegate) method so that registered delegates receive the ShowAboutBox() method.

적용 대상

추가 정보