找到最近的控件

时间:2012-08-07 05:12:36

标签: wpf vb.net

我在屏幕中动态创建控件。如果我在屏幕上放置一个按钮,那么它应该突出显示并显示最靠近新按钮的最近按钮之间的距离。

1 个答案:

答案 0 :(得分:5)

  1. 使用VisualTreeHelper http://www.codeproject.com/Articles/21495/Understanding-the-Visual-Tree-and-Logical-Tree-in循环浏览整个视图的可视树...此处检查可用于浏览可视树中所有元素的TraverseVisualTree方法。< / LI>
  2. 对于每个UIElement控件,请检查其ActualWidth&amp; Actualheight财产。
  3. 获取当前UIElement的相对坐标位置。使用此代码... http://blogs.msdn.com/b/llobo/archive/2006/05/02/code-for-getting-screen-relative-position-in-wpf.aspx
  4. 然后使用(relativePosition.X + actualWidth)和(relativePosition.Y + actualHeight)检查每个元素,其中一个元素与当前元素的距离最近。