Use Ellipse event delegate
<Window x:Class="WpfApplication1.Window1"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
Title="Code Events" Height="300" Width="300">
<Grid HorizontalAlignment="Center" VerticalAlignment="Center">
<Button>
<Grid>
<Grid.ColumnDefinitions>
<ColumnDefinition />
<ColumnDefinition />
</Grid.ColumnDefinitions>
<Canvas Width="20" Height="18" VerticalAlignment="Center">
<Ellipse x:Name="myEllipse"
Canvas.Left="1" Canvas.Top="1" Width="16" Height="16"
Fill="Yellow" Stroke="Black" />
</Canvas>
<TextBlock Grid.Column="1">Click!</TextBlock>
</Grid>
</Button>
</Grid>
</Window>
//File:Window.xaml.vb
Imports System
Imports System.Windows
Imports System.Diagnostics
Namespace WpfApplication1
Public Partial Class Window1
Inherits System.Windows.Window
Public Sub New()
InitializeComponent()
AddHandler myEllipse.MouseDown, AddressOf MouseDownEllipse
AddHandler myEllipse.PreviewMouseDown, AddressOf PreviewMouseDownEllipse
End Sub
Private Sub PreviewMouseDownEllipse(sender As Object, e As RoutedEventArgs)
Debug.WriteLine("PreviewMouseDownButton")
End Sub
Private Sub MouseDownEllipse(sender As Object, e As RoutedEventArgs)
Debug.WriteLine("MouseDownButton")
End Sub
End Class
End Namespace
Related examples in the same category