Control::OnClick Method (EventArgs^)
Raises the Click event.
Assembly: System.Windows.Forms (in System.Windows.Forms.dll)
Raising an event invokes the event handler through a delegate. For more information, see Handling and Raising Events.
The OnClick method also allows derived classes to handle the event without attaching a delegate. This is the preferred technique for handling the event in a derived class.
Notes to Inheritors:
When overriding OnClick in a derived class, be sure to call the base class's OnClick method so that registered delegates receive the event.
The following code example demonstrates overriding the OnClick method in a derived class. To run the example, paste the following code after a form class, in the same file. Add a textbox of type SingleClickTextBox to the form.
// This is a custom TextBox control that overrides the OnClick method // to allow one-click selection of the text in the text box. public ref class SingleClickTextBox: public TextBox { protected: virtual void OnClick( EventArgs^ e ) override { this->SelectAll(); TextBox::OnClick( e ); } };
The following code example shows one of the many uses of the Click event and event handler.
// This example uses the Parent property and the Find method of Control to set // properties on the parent control of a Button and its Form. The example assumes // that a Button control named button1 is located within a GroupBox control. The // example also assumes that the Click event of the Button control is connected to // the event handler method defined in the example. private: void button1_Click( Object^ /*sender*/, System::EventArgs^ /*e*/ ) { // Get the control the Button control is located in. In this case a GroupBox. Control^ control = button1->Parent; // Set the text and backcolor of the parent control. control->Text = "My Groupbox"; control->BackColor = Color::Blue; // Get the form that the Button control is contained within. Form^ myForm = button1->FindForm(); // Set the text and color of the form containing the Button. myForm->Text = "The Form of My Control"; myForm->BackColor = Color::Red; }
Available since 1.1