Wpf 控制原点更改
有谁知道:Wpf 控制原点更改,wpf,Wpf,有谁知道: 为什么有些控件中的原点位于边界的中心,有些控件位于右上角,有些控件位于右上角-10px 如何在WPF中更改控件的原点 尝试的方法: 用于在画布中获取控件的原点:myControl.TranslatePoint(新点(0,0),null) 尝试: myControl.renderTransferMorigin=新点(0.0,0.0); myControl.RenderTransferMorigin=新点(0.5,0.5); myControl.RenderTransferMorigin
myControl.TranslatePoint(新点(0,0),null)
李>
myControl.renderTransferMorigin=新点(0.0,0.0);
myControl.RenderTransferMorigin=新点(0.5,0.5);
myControl.RenderTransferMorigin=新点(1.0,1.0);
尝试更改垂直对齐和水平对齐。
什么也没发生
作为分析,我尝试在MouseMove事件中画一条红线,以画布原点作为起点,以画布原点作为终点:
myLine.X2=myControl.TranslatePoint(新点(0,0),null).X;
myLine.Y2=myControl.TranslatePoint(新点(0,0),null).Y;
这条线指向控制中心的一些控件,以及右上角的一些其他控件,但从不指向左上角
所有控件的对齐都设置为拉伸/拉伸。通过谷歌搜索,我发现了一些关于类似情况的有趣解释,因为DPI更改/设置:我尝试简单地将DPI从100%切换到120%,然后再切换回来: WPF现在报告了我画布上控件的另一个错误定位,但我问题中的所有问题现在似乎都有了解释,而不是解决方案 错误的DPI集只会影响HitTest、TranslateTransforms和渲染过程,而不会影响Canvas.SetLeft/Right/Top/Bottom或Margin属性或ScaleTransform的准确程度如何 我在大会上读到了关于禁用Iaawarenessattribute的文章,但它似乎不起作用… 会发生什么