我在窗口内有一个控件。我从右到左设置控件的流向。我试图从窗口计算控制位置。
Point locationfromWindow = control.TranslatePoint(new Point(0, 0), control);
使用上面的代码我发现了这一点,但它与设置的左右控制流方向不同。
控制的流向是否从窗口值影响位置?如何解决这个问题
答案 0 :(得分:0)
我遇到了同样的问题。当FlowDirection是RTL时,我通过“反转”计算的值来解决它。这意味着修复位置从窗口的X坐标。 像这样:
double correctX = control.X - locationfromWindow.X;
如果有人有更好的解决方案,请告诉我们。
答案 1 :(得分:0)
上面的代码从右上角计算位置。如果我们需要从左上角计算一些像这样的东西
Point pt = TranslatePoint(new Point(0, 0), control);
pt.Offset(-control.ActualWidth, 0);
它从左上角计算点。并且对我来说非常适合