WPF 点在控件内 判断

文章来源于本人的cnblog克隆https://www.cnblogs.com/ZoeWong/p/18396165

Winform方法

Winform里点在控件内判断方法很简单,获取的Rectangle,然后用它Contains方法就行

WPF方法

WPF不行,但其实也差不多,方法如下:

  • 前提:控件A是总体容器控件,控件B是其子控件,判断鼠标点是否在B内
  • 获取鼠标当前位置

Point pntMouse = Mouse.GetPosition ( A);

  • 获取控件B的Rect

Point pntB = B.TranslatePoint ( new Point(), A);

Rect rectB = new Rect(pntB,B.RenderSize);

  • 判断鼠标是否在B内

bool bContained = rectB.Contains(pntMouse);

就以上这么简单。

相关推荐
麻花20139 小时前
C#之WPF的C1FlexGrid空间的行加载事件和列事件变更处理动态加载的枚举值
开发语言·c#·wpf
lcintj10 小时前
【WPF】Prism学习(九)
学习·wpf·prism
界面开发小八哥10 小时前
界面控件DevExpress WPF中文教程:网格视图数据布局的列和卡片字段
wpf·界面控件·devexpress·ui开发·用户界面
△曉風殘月〆10 小时前
如何在WPF中嵌入其它程序
wpf
Crazy Struggle10 小时前
功能齐全的 WPF 自定义控件资源库(收藏版)
.net·wpf·ui控件库
shepherd枸杞泡茶1 天前
WPF动画
c#·.net·wpf
lcintj1 天前
【WPF】Prism学习(十)
学习·wpf·prism
wyh要好好学习1 天前
WPF数据加载时添加进度条
ui·wpf
code_shenbing1 天前
跨平台WPF框架Avalonia教程 三
前端·microsoft·ui·c#·wpf·跨平台·界面设计
lcintj2 天前
【WPF】Prism学习(八)
学习·wpf·prism