2010-05-27 5 views
6

Есть ли способ получить текущее визуализированное местоположение элемента управления WPF в его окне после все текущие RenderTransform s были применены? Я могу просто быть слепым, но я не вижу очевидного метода.Расположение управления WPF в окне?

ответ

17

Я предполагаю, что я должен был продолжать выталкивать, прежде чем спрашивать ... но вместо того, чтобы удалять, возможно, это поможет кому-то позже.

Хитрость заключается в том, чтобы преобразовать точку (0,0) из осей управления для осей окна, так что ...

Point renderedLocation = theControl.TranslatePoint(new Point(0,0), theWindow);

Если вам нужна внутренняя точка на контроле на работает аналогично, просто используйте эту локальную точку вместо (0,0).

Не пытайтесь использовать его Margin или Padding, это не так.

+2

Ничего плохого в ответе на свой вопрос, если вы найдете ответ. Кроме того, вы должны сделать это принятым ответом. Таким образом, люди, которые ищут, увидят, что он ответил. –

+0

Не могли бы вы прийти с полным примером, который показывает, как вы это используете? –

Смежные вопросы