I wanted to have a control that will process a Click event or a DoubleClick event. All the solutions I could find on the internet used a rather complicated rollback process. This is a very simple solution that could be understood by just about anybody.
Using the code
The form uses a label for the control. Just Click or DoubleClick on the label to try it out. The code has a constant to enable the DoubleClick speed to be altered.
Public Class frmClickDoubleClick
Const DOUBLE_CLICK_SPEED As Integer = 250
Dim isDoubleTriggered As Boolean = False
Private Sub labLabel_Click(ByVal sender As Object, _
ByVal e As System.EventArgs) Handles labLabel.Click
If isDoubleTriggered Then
isDoubleTriggered = False
Me.BackColor = Color.Coral
Me.Text = "Single Click"
Private Sub labLabel_DoubleClick(ByVal sender As Object, _
ByVal e As System.EventArgs) Handles labLabel.DoubleClick
isDoubleTriggered = True
Me.BackColor = Color.Aquamarine
Me.Text = "Double Click"