WPF.有可能做椭圆"矩形边界"hittest吗?

sla*_*vka 5 c# wpf hittest

是否有可能在椭圆边界矩形中进行命中测试,就像在这张图片上一样

在此输入图像描述

Mat*_*Mat 6

您可以将它们都放入边框网格并检查它是否被单击

XAML:

            <Grid MouseDown="Border_MouseDown">
                <Rectangle Width="100"
                           Height="100"
                           Fill="Green" />
                <Ellipse Width="100"
                         Height="100"
                         Fill="Orange" />
            </Grid>
Run Code Online (Sandbox Code Playgroud)

代码背后

   private void Border_MouseDown(object sender, MouseButtonEventArgs e)
        {
            MessageBox.Show("hit it");
        }
Run Code Online (Sandbox Code Playgroud)

编辑 只是为了完成这里只有绿色区域的XAML:

   <Grid>
            <Rectangle Width="100"
                       Height="100"
                       Fill="Green"
                       MouseDown="Border_MouseDown" />
            <Ellipse Width="100"
                     Height="100"
                     Fill="Orange" />
        </Grid>
Run Code Online (Sandbox Code Playgroud)