mirror of
https://gitee.com/akwkevin/aistudio.-wpf.-diagram
synced 2026-04-02 15:16:37 +08:00
临时提交
This commit is contained in:
@@ -24,24 +24,7 @@ namespace AIStudio.Wpf.DiagramDesigner
|
||||
}
|
||||
|
||||
public static readonly DependencyProperty ScrollViewerProperty =
|
||||
DependencyProperty.Register(nameof(ScrollViewer), typeof(ScrollViewer), typeof(ZoomBox), new FrameworkPropertyMetadata(null,
|
||||
new PropertyChangedCallback(OnScrollViewerChanged)));
|
||||
|
||||
private static void OnScrollViewerChanged(DependencyObject d, DependencyPropertyChangedEventArgs e)
|
||||
{
|
||||
ZoomBox target = (ZoomBox)d;
|
||||
ScrollViewer oldvalue = (ScrollViewer)e.OldValue;
|
||||
ScrollViewer newvalue = (ScrollViewer)e.NewValue;
|
||||
target.OnScrollViewerChanged(oldvalue, newvalue);
|
||||
}
|
||||
|
||||
protected virtual void OnScrollViewerChanged(ScrollViewer oldvalue, ScrollViewer newvalue)
|
||||
{
|
||||
if (newvalue != null)
|
||||
{
|
||||
DesignerCanvas = VisualHelper.FindChild<DesignerCanvas>(newvalue);
|
||||
}
|
||||
}
|
||||
DependencyProperty.Register(nameof(ScrollViewer), typeof(ScrollViewer), typeof(ZoomBox));
|
||||
#endregion
|
||||
|
||||
#region DesignerCanvas
|
||||
@@ -154,8 +137,8 @@ namespace AIStudio.Wpf.DiagramDesigner
|
||||
|
||||
double scale, xOffset, yOffset;
|
||||
this.InvalidateScale(out scale, out xOffset, out yOffset);
|
||||
this.zoomThumb.Width = this.ScrollViewer.ViewportWidth * scale;
|
||||
this.zoomThumb.Height = this.ScrollViewer.ViewportHeight * scale;
|
||||
this.zoomThumb.Width = (this.ScrollViewer.ViewportWidth) * scale;
|
||||
this.zoomThumb.Height = (this.ScrollViewer.ViewportHeight) * scale;
|
||||
Canvas.SetLeft(this.zoomThumb, xOffset + this.ScrollViewer.HorizontalOffset * scale);
|
||||
Canvas.SetTop(this.zoomThumb, yOffset + this.ScrollViewer.VerticalOffset * scale);
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user