WPF 在指定的位置选择控件。
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了WPF 在指定的位置选择控件。相关的知识,希望对你有一定的参考价值。
通过鼠标点击的方法:
WpfControl wc = new WpfControl();
Mouse.Click(wc);
int px = Control.MousePosition.X;
int py = Control.MousePosition.Y
可以得到这个wpfedit控件的位置。
我可以得到wpfedit的parentcontrol,我想很快的通过它位置定位来寻找这个控件,如果实现?
不用 wti.SearchProperties[WpfTreeItem.PropertyNames.Name] =xxx这种方法,现在就是这种方法太慢。
如果控件的位置不能获取的,位置为中心的发散区域是否可行呢?
求助
1. 遍历children匹配type这个方法行不通,原因:一个页面上的相同控件太多;
2. 放在字典中做缓存处理没有尝试过,可以试试。
3. .NET 4.5 貌似提供了根据位置寻找可视的控件的方法。
有空研究第二条。
1、如果只需要获取相对于其父级的偏移量,则可以使用以下方法:
Vector vector = VisualTreeHelper.GetOffset(myTextBlock); 偏移量保存在Vector对象中
2、相对灵活的方法可以使用 TransformToAncestor方法,这样可以获得相对于Window的偏移量
GeneralTransform generalTransform1 = myTextBlock.TransformToAncestor(this);
Point currentPoint = generalTransform1.Transform(new Point(0, 0));
在WPF中弹出winfrom窗体怎么设置出现位置
参考技术A 选中界面 是最外层那层,属性里面有个windowstartupLocation 和windowstate以上是关于WPF 在指定的位置选择控件。的主要内容,如果未能解决你的问题,请参考以下文章