IButtonControl.PerformClick 方法

定义

为该控件生成 Click 事件。

public:
 void PerformClick();
public void PerformClick ();
abstract member PerformClick : unit -> unit
Public Sub PerformClick ()

示例

下面的示例继承自 ButtonBase 类并实现 IButtonControl 接口。 将实现添加到 DialogResult 属性和 NotifyDefaultPerformClick 方法。

#using <System.dll>
#using <System.Drawing.dll>
#using <System.Windows.Forms.dll>

using namespace System;
using namespace System::Windows::Forms;
using namespace System::Drawing;

public ref class MyButton: public ButtonBase, public IButtonControl
{
private:
   System::Windows::Forms::DialogResult myDialogResult;

public:
   MyButton()
   {
      // Make the button White and a Popup style
      // so it can be distinguished on the form.
      this->FlatStyle = ::FlatStyle::Popup;
      this->BackColor = Color::White;
   }

   property System::Windows::Forms::DialogResult DialogResult 
   {
      // Add implementation to the IButtonControl.DialogResult property.
      virtual System::Windows::Forms::DialogResult get()
      {
         return this->myDialogResult;
      }

      virtual void set( System::Windows::Forms::DialogResult value )
      {
         if ( Enum::IsDefined( System::Windows::Forms::DialogResult::typeid, value ) )
         {
            this->myDialogResult = value;
         }
      }
   }

   // Add implementation to the IButtonControl.NotifyDefault method.
   virtual void NotifyDefault( bool value )
   {
      if ( this->IsDefault != value )
      {
         this->IsDefault = value;
      }
   }

   // Add implementation to the IButtonControl.PerformClick method.
   virtual void PerformClick()
   {
      if ( this->CanSelect )
      {
         this->OnClick( EventArgs::Empty );
      }
   }
};
using System;
using System.Windows.Forms;
using System.Drawing;

public class MyButton : ButtonBase, IButtonControl
{
    private DialogResult myDialogResult;

    public MyButton()
    {
        // Make the button White and a Popup style
        // so it can be distinguished on the form.
        this.FlatStyle = FlatStyle.Popup;
        this.BackColor = Color.White;
    }
        
    // Add implementation to the IButtonControl.DialogResult property.
    public DialogResult DialogResult
    {
        get
        {
            return this.myDialogResult;
        }

        set
        {
            if(Enum.IsDefined(typeof(DialogResult), value))				
            {
                this.myDialogResult = value;
            }
        }	
    }

    // Add implementation to the IButtonControl.NotifyDefault method.
    public void NotifyDefault(bool value)
    {
        if(this.IsDefault != value)
        {
            this.IsDefault = value;
        }
    }

    // Add implementation to the IButtonControl.PerformClick method.
    public void PerformClick()
    {
        if(this.CanSelect)
        {
            this.OnClick(EventArgs.Empty);
        }
    }
}
Imports System.Windows.Forms
Imports System.Drawing


Public Class MyButton
   Inherits ButtonBase
   Implements IButtonControl 
   Private myDialogResult As DialogResult
      
   Public Sub New()
      ' Make the button White and a Popup style      ' so it can be distinguished on the form.
      Me.FlatStyle = FlatStyle.Popup
      Me.BackColor = Color.White
   End Sub
   
   ' Add implementation to the IButtonControl.DialogResult property.
   Public Property DialogResult() As DialogResult Implements IButtonControl.DialogResult
      Get
         Return Me.myDialogResult
      End Get
      
      Set
         If [Enum].IsDefined(GetType(DialogResult), value) Then
            Me.myDialogResult = value
         End If
      End Set
   End Property
   
   ' Add implementation to the IButtonControl.NotifyDefault method.
   Public Sub NotifyDefault(value As Boolean) Implements IButtonControl.NotifyDefault
      If Me.IsDefault <> value Then
         Me.IsDefault = value
      End If
   End Sub 
      
   ' Add implementation to the IButtonControl.PerformClick method.
   Public Sub PerformClick() Implements IButtonControl.PerformClick
      If Me.CanSelect Then
         Me.OnClick(EventArgs.Empty)
      End If
   End Sub

End Class

注解

对于具有焦点的按钮,或针对默认按钮 ((如果用户按 ENTER 键时没有其他按钮具有焦点) )调用此方法。 如果用户按下 ESC 键(如果按钮设置为“取消”按钮),也会调用此方法。

适用于

另请参阅