欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

XAML如何获取元素的位置

程序员文章站 2023-11-24 12:50:46
在之前讨论 listview 滚动相关需求的文章中(uwp: listview 中与滚动有关的两个需求的实现)曾经提到了获取元素相对位置的方法,即某元素相对另一元素的位置。...

在之前讨论 listview 滚动相关需求的文章中(uwp: listview 中与滚动有关的两个需求的实现)曾经提到了获取元素相对位置的方法,即某元素相对另一元素的位置。现将所有相关方法再作整理,并且包括 uwp 与 wpf 两者的实现,如下:

XAML如何获取元素的位置

wpf(两种方式):

generaltransform generaltransform = controlb.transformtovisual(controla);
point point = generaltransform.trsnform(new point());
point point = controlb.translatepoint(new point(), controla);

uwp:

generaltransform generaltransform = controlb.transformtovisual(controla);
point point = generaltransform.trsnformpoint(new point());

 这里需要注意的一点时,控件的 margin 值是包括在计算结果之内的,比如 controlb 包括 margin 值,则其向上、向左的 margin 值会被计算在最终结果内。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。