ButtonBase.ClickMode Property

Gets or sets when the Click event occurs.

Namespace:  System.Windows.Controls.Primitives
Assembly:  System.Windows (in System.Windows.dll)

Public Property ClickMode As ClickMode
<button ClickMode="clickModeValue"/>

XAML Values


A named constant of the ClickMode enumeration, such as Hover.

Property Value

Type: System.Windows.Controls.ClickMode
When the Click event occurs. The default value is ClickMode.Release.

Dependency property identifier field: ClickModeProperty

Use this property to set what type of user interaction is required to raise a Click event. When a button's click mode is Hover, the Click event cannot be raised by using the keyboard.

The following example shows three buttons that respond to clicks in three different ways based on their ClickMode property value.

  • Hover - When the mouse pointer hovers over the first button, the foreground color of the button changes.

  • Press - When the left mouse button is pressed while over the second button, the foreground color of the button changes.

  • Release - When the mouse button is pressed and released while over the third button, the button resets the foreground color of the other two buttons to their original color.

Private Sub OnClick1(ByVal sender As Object, ByVal e As RoutedEventArgs)
    btn1.Foreground = New SolidColorBrush(Colors.Blue)
    text1.Text = "Click event handled on Hover."
    text2.Text = ""
    text3.Text = ""
End Sub

Private Sub OnClick2(ByVal sender As Object, ByVal e As RoutedEventArgs)
    btn2.Foreground = New SolidColorBrush(Colors.Green)
    text1.Text = ""
    text2.Text = "Click event handled on Press."
    text3.Text = ""
End Sub

Private Sub OnClick3(ByVal sender As Object, ByVal e As RoutedEventArgs)
    btn1.Foreground = New SolidColorBrush(Colors.Green)
    btn2.Foreground = New SolidColorBrush(Colors.Blue)
    text1.Text = ""
    text2.Text = ""
    text3.Text = "Click event handled on Release."
End Sub

    <StackPanel x:Name="LayoutRoot" Background="White" Margin="10">
          <Button x:Name="btn1" Margin ="5" 
		    Foreground="Green" Width="120" Click="OnClick1" 
		    Content="Hover to Click" ClickMode="Hover" />
        <TextBlock x:Name="text1" Margin ="0,8,0,0" />
        <Button x:Name="btn2" Margin ="5,5,5,5" 
		    Foreground="Blue" Width="120" Click="OnClick2" 
		    Content="Press to Click" ClickMode="Press" />
        <TextBlock x:Name="text2" Margin="0,8,0,0" />
        <Button x:Name="btn3" Margin ="5,5,5,5" 
		    Click="OnClick3" Width="120" Content="Reset" 
        <TextBlock x:Name="text3" Margin ="0,8,0,0" />


Supported in: 5, 4, 3

Silverlight for Windows Phone

Supported in: Windows Phone OS 7.1, Windows Phone OS 7.0

For a list of the operating systems and browsers that are supported by Silverlight, see Supported Operating Systems and Browsers.