2012-08-07 69 views
0

我在Screen中動態創建控件。如果我在屏幕上放置一個按鈕,那麼它應該突出顯示並且顯示位於最近放置的按鈕附近的最近的按鈕之間的距離。找到最近的控件

+0

它應該是兄弟姐妹(同一父母的孩子)還是它可以是任何控制? – 2012-08-07 05:59:55

回答

5
  1. 環通使用VisualTreeHelperhttp://www.codeproject.com/Articles/21495/Understanding-the-Visual-Tree-and-Logical-Tree-in整個視圖的可視化樹...這裏檢查TraverseVisualTree方法,您可以使用去通在可視樹中的所有元素。
  2. 對於每個UIElement控制檢查它的ActualWidth & Actualheight屬性。
  3. 獲取當前UIElement的相對座標位置。使用此代碼... http://blogs.msdn.com/b/llobo/archive/2006/05/02/code-for-getting-screen-relative-position-in-wpf.aspx

然後,使用(+ relativePosition.X ActualWidth的)和(relativePosition.Y +的ActualHeight)檢查哪一個產生當前元素的最近距離的每個元素。