WPF獲取某控制項的位置,也就是偏移量

2021-09-19 22:42:32 字數 1164 閱讀 3703

原文:

wpf獲取某控制項的位置,也就是偏移量

此段示例在msdn中可見。xaml**如下:

<

window

xmlns

=""xmlns:x

="">

<

stackpanel

margin

="16"

>

<

stackpanel

margin

="8"

>

<

textblock

name

="mytextblock"

margin

="4"

text

="hello, world"

/>

stackpanel

>

stackpanel

>

window

>

1、如果只需要獲取相對於其父級的偏移量,則可以使用以下方法:

//

return the offset vector for the textblock object.

vector vector =visualtreehelper.getoffset(mytextblock);

//convert the vector to a point value.

point currentpoint = new point(vector.x, vector.y);

偏移量儲存在vector物件中

2、相對靈活的方法可以使用 transformtoancestor方法,這樣可以獲得相對於window的偏移量

//

return the general transform for the specified visual object.

generaltransform generaltransform1 = mytextblock.transformtoancestor(this

);//

retrieve the point value relative to the parent.

point currentpoint = generaltransform1.transform(new point(0, 0));

WPF獲取某控制項的位置,也就是偏移量

此段示例在msdn中可見。xaml 如下 window xmlns xmlns x stackpanel margin 16 stackpanel margin 8 textblock name mytextblock margin 4 text hello,world stackpanel sta...

WPF獲取控制項位置的方法

wpf中提供了多種布局方式,因此在布局中的定位相對於winform的絕對定位要靈活的多,在wpf中,控制項均沒有如winform中的location屬性,但是,對應的提供了各種設定與獲取相對於承載元素的定位 一般來說,wpf中的布局控制項大多都是相對定位 網格,流式,面板等 如果我們要改變控制項在布...

WPF 獲取控制項間的相對位置

wpf 獲取控制項間的相對位置 周銀輝 我們知道wpf有著比較靈活的布局方式,關於某個控制項的座標,canvas中的元素最簡單,我們可以直接通過其getleft 與gettop方法來獲取,但其它布局面板中的,以及存在於不同布局面板中的元素中間的相對位置就比較讓我們頭疼了,其實有簡單方法的,不知你有沒...