


_doubleClickMaxTime = TimeSpan.FromMilliseconds(SystemInformation.DoubleClickTime) The following code example demonstrates how this can be done.


Perform the appropriate action depending on whether a click or double-click takes place. Handle the MouseDown event and determine the location and time span between clicks using the SystemInformation property and a Timer component. Private Sub Button1_Click(sender As Object, e As EventArgs)įormBorderStyle = FormBorderStyle.FixedToolWindow ' A double click raises the click event twice. ' This flag prevents the click handler logic from running Private Sub Button1_DoubleClick(sender As Object, e As EventArgs) Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.LoadĪddHandler button1.Click, AddressOf Button1_ClickĪddHandler button1.DoubleClick, AddressOf Button1_DoubleClick Private void Button1_Click(object sender, EventArgs e)įormBorderStyle = FormBorderStyle.FixedToolWindow A double click raises the click event twice. This flag prevents the click handler logic from running Private void Button1_DoubleClick(object sender, EventArgs e) Private void Form1_Load(object sender, EventArgs e)īutton1.DoubleClick += Button1_DoubleClick The following code demonstrates how a form changes the style of border based on a click or double-click of the new button control: public partial class Form1 : Form SetStyle(ControlStyles.StandardClick Or ControlStyles.StandardDoubleClick, True) Public Class DoubleClickButton : Inherits Button SetStyle(ControlStyles.StandardClick | ControlStyles.StandardDoubleClick, true) Set the style so a double click event occurs. This code example uses a new button control that enables double-clicks: public partial class DoubleClickButton : Button The following code example demonstrates a how to create a custom button with double-click enabled, as well as how to roll back the click action in the double-click event handling code. Handle the double-click event and roll back the click action as well as the double-click action. If not, enable the control with the SetStyle method. To roll back a click actionĮnsure that the control you are working with has standard double-click behavior. You measure the time between clicks and if a second click occurs before the value of DoubleClickTime is reached and the click is within a rectangle defined by DoubleClickSize, perform the double-click action otherwise, perform the click action. In rare situations you may need to simulate click and double-click behavior by handling the MouseDown event and by using the DoubleClickTime and DoubleClickSize properties of the SystemInformation class. One solution is to handle the double-click event and roll back the actions in the handling of the click event.
