MyControl : ContentControl
| ContentProperty ________|__________ | | | Grid Canvas WrapPanel etc.. |_______|_________| | Drag Moving Childs
因此,可以更轻松地更改面板的类型,将逻辑保持为缩放、平移、拖动子项,并在父 ContentControl 中实现。
安排/测量覆盖问题,拖动鼠标定位已成为地狱。似乎所有位置都被抵消了:
e.GetPosition(this.Content as Panel).X
使 Dragged Children 在左侧以巨大的偏移量移动。
和
Translate(Point,UIElement)
似乎对任何调用组合都没有影响:
this.Content.Translate(Point,Children);
或者
Child.Content.Translate(Point,this.Content);
既不尝试:
Offset(x,y)
在 TranslateTransform 或 HitTest 之前和之后。
类似场景的好例子:http: //www.codeproject.com/KB/WPF/zoomandpancontrol.aspx
如何修复 HitTesting/DragMove 中的拖动偏移?我到底可以在安排/测量覆盖中修复什么以使 TranslateTransform 没有 UnTranslable 偏移量?谢谢