Behavior.OnMouseDoubleClick Method (Glyph, MouseButtons, Point)

 
System_CAPS_noteNote

The .NET API Reference documentation has a new home. Visit the .NET API Browser on docs.microsoft.com to see the new experience.

Called when any double-click message enters the adorner window of the BehaviorService.

Namespace:   System.Windows.Forms.Design.Behavior
Assembly:  System.Design (in System.Design.dll)

Public Overridable Function OnMouseDoubleClick (
	g As Glyph,
	button As MouseButtons,
	mouseLoc As Point
) As Boolean

Parameters

g
Type: System.Windows.Forms.Design.Behavior.Glyph

A Glyph.

button
Type: System.Windows.Forms.MouseButtons

A MouseButtons value indicating which button was clicked.

mouseLoc
Type: System.Drawing.Point

The location at which the click occurred.

Return Value

Type: System.Boolean

true if the message was handled; otherwise, false.

The OnMouseDoubleClick method is called when any double-click message enters the WndProc of the adorner window of the BehaviorService. The message is first passed here, to the top-most Behavior in the behavior stack. Returning true from this method signifies that the message was handled by the Behavior and should not continue to be processed. From here, the message is sent to the appropriate behavior.

The following code example demonstrates how to handle a double-click message. For a full code listing, see How to: Extend the Appearance and Behavior of Controls in Design Mode.

' When you double-click on an AnchorGlyph, the value of 
' the control's Anchor property is toggled.
'
' Note that the value of the Anchor property is not set
' by direct assignment. Instead, the 
' PropertyDescriptor.SetValue method is used. This 
' enables notification of the design environment, so 
' related events can be raised, for example, the
' IComponentChangeService.ComponentChanged event.
Public Overrides Function OnMouseDoubleClick( _
ByVal g As Glyph, _
ByVal button As MouseButtons, _
ByVal mouseLoc As Point) As Boolean

    MyBase.OnMouseDoubleClick(g, button, mouseLoc)

    If button = MouseButtons.Left Then
        Dim ag As AnchorGlyph = g

        Dim pdAnchor As PropertyDescriptor = _
        TypeDescriptor.GetProperties(ag.relatedControl)("Anchor")

        If ag.IsEnabled Then
            ' The glyph is enabled. 
            ' Clear the AnchorStyle flag to disable the Glyph.
            pdAnchor.SetValue(ag.relatedControl, _
            ag.relatedControl.Anchor Xor ag.anchorStyle)
        Else
            ' The glyph is disabled. 
            ' Set the AnchorStyle flag to enable the Glyph.
            pdAnchor.SetValue(ag.relatedControl, _
            ag.relatedControl.Anchor Or ag.anchorStyle)
        End If
    End If

    Return True

End Function

.NET Framework
Available since 2.0
Return to top
Show: