DiagramPanel
DiagramPanel是图的中心类,它持有所有部件的图层,负责翻译(滚动)和缩放(分解)及对齐,跟踪图的界限,并有各种命中测试方法来搜索图中特定元素.
继承自: Panel
实现: IScrollInfo
构造函数
属性
public NodeLayer AdornmentLayer { get; }
value = diagramPanel.AdornmentLayer
获得用于持有Adornments的标准层,通常它位于其他所有层的前面.
public int AutoScrollDelay { get; set; }
value = diagramPanel.AutoScrollDelay
diagramPanel.AutoScrollDelay = value
自动滚出之前, 需要等待多久或设定多久 。
public Thickness AutoScrollRegion { get; set; }
value = diagramPanel.AutoScrollRegion
diagramPanel.AutoScrollRegion = value
在会自动使视图滚动的鼠标拖动的面板中获取或设置边距。
public int AutoScrollTime { get; set; }
value = diagramPanel.AutoScrollTime
diagramPanel.AutoScrollTime = value
当鼠标位于 AutoScrollRegion 时, 获取或设定如何快速更改位置 。
public bool CanHorizontallyScroll { get; set; }
value = diagramPanel.CanHorizontallyScroll
diagramPanel.CanHorizontallyScroll = value
获取或设定用户是否可以水平滚动 。 (Implements IScrollInfo.)
public bool CanVerticallyScroll { get; set; }
value = diagramPanel.CanVerticallyScroll
diagramPanel.CanVerticallyScroll = value
获取或设定用户是否可以垂直滚动 。 (Implements IScrollInfo.)
public Diagram Diagram { get; internal set; }
value = diagramPanel.Diagram
diagramPanel.Diagram = value
获取此面板所在的图表 。
public Rect DiagramBounds { get; set; }
value = diagramPanel.DiagramBounds
diagramPanel.DiagramBounds = value
获取或设置图的模型坐标界限。
public double ExtentHeight { get; }
value = diagramPanel.ExtentHeight
获取此图可滚动部分的垂直大小, 以控制(独立像素) 单位 。 (Implements IScrollInfo.)
public double ExtentWidth { get; }
value = diagramPanel.ExtentWidth
获取此图可滚动部分的横向大小, 控制(独立像素) 单位 。 (Implements IScrollInfo 。)
public Rect FixedBounds { get; set; }
value = diagramPanel.FixedBounds
diagramPanel.FixedBounds = value
获取或设置一个固定的边框矩由 ComputeDiagramBounds 返回 。
public HorizontalAlignment HorizontalContentAlignment { get; set; }
value = diagramPanel.HorizontalContentAlignment
diagramPanel.HorizontalContentAlignment = value
当 DiagramBounds 宽度小于 ViewportWidth 时, 获取或设定部件在面板中的位置 。
public double HorizontalOffset { get; }
value = diagramPanel.HorizontalOffset
获得图中部分的横向偏移。 (Implements IScrollInfo.)
public double MaximumScale { get; set; }
value = diagramPanel.MaximumScale
diagramPanel.MaximumScale = value
获取或设定Scale可能要取的最大值。
public double MinimumScale { get; set; }
value = diagramPanel.MinimumScale
diagramPanel.MinimumScale = value
获取或设定比 Scale 可能取取的零 的最小值 。
public Thickness Padding { get; set; }
value = diagramPanel.Padding
diagramPanel.Padding = value
获取或设定额外“空”空间的量, 大约为 DiagramBounds 。
public Point Position { get; set; }
value = diagramPanel.Position
diagramPanel.Position = value
获取或设置点,在模型坐标中,显示在这个面板左上角.
public double Scale { get; set; }
value = diagramPanel.Scale
diagramPanel.Scale = value
获取或设定所有设备的显示比例。
public double ScrollHorizontalLineChange { get; set; }
value = diagramPanel.ScrollHorizontalLineChange
diagramPanel.ScrollHorizontalLineChange = value
水平滚动时获取或设定"行"的大小.
public ScrollViewer ScrollOwner { get; set; }
value = diagramPanel.ScrollOwner
diagramPanel.ScrollOwner = value
获取或设置让用户滚动此面板的 ScrollViewer 。 (Implements IScrollInfo.)
public double ScrollVerticalLineChange { get; set; }
value = diagramPanel.ScrollVerticalLineChange
diagramPanel.ScrollVerticalLineChange = value
垂直滚动时获取或设置"行"的大小.
public StretchPolicy Stretch { get; set; }
value = diagramPanel.Stretch
diagramPanel.Stretch = value
获取或设定面板的 DiagramBounds 属性的设置方式, 取决于大小 。
public VerticalAlignment VerticalContentAlignment { get; set; }
value = diagramPanel.VerticalContentAlignment
diagramPanel.VerticalContentAlignment = value
当 DiagramBounds 宽度小于 ViewportWidth 时, 获取或设定部件在面板中的位置 。
public double VerticalOffset { get; }
value = diagramPanel.VerticalOffset
获得图中部分的垂直偏移 。 (Implements IScrollInfo.)
public Rect ViewportBounds { get; }
value = diagramPanel.ViewportBounds
获得这个面板的可见部分, 在模型坐标中 。
public double ViewportHeight { get; }
value = diagramPanel.ViewportHeight
获取此面板可见部分的垂直大小, 以控制(独立像素) 单位 。 (Impments IScrollInfo.)
public double ViewportWidth { get; }
value = diagramPanel.ViewportWidth
获取此面板可见部分的横向大小, 以控制(设备独立像素) 单位 。 (Implements IScrollInfo.)
public Point ZoomPoint { get; set; }
value = diagramPanel.ZoomPoint
diagramPanel.ZoomPoint = value
获取或设定在缩放时使用的明显焦点点 。
public int ZoomTime { get; set; }
value = diagramPanel.ZoomTime
diagramPanel.ZoomTime = value
适应 DiagramBounds 更改或面板大小更改导致内容重新对齐,或调用 Rect 或 Action 时,获取或设定如何快速更改 Sporm 和/或 Place 属性 。
方法
protected override Size ArrangeOverride(Size finalSize)
result = diagramPanel.ArrangeOverride(finalSize)
在此面板中排列每个层 。
- finalSize
public void CenterPart(Part part, Action afterwards)
diagramPanel.CenterPart(part, afterwards)
将一个部分的界限放在这个视点内
- part
- afterwards
- a 动画完成后要执行的动作;可能无效
public void CenterRect(Rect bounds, Action afterwards)
diagramPanel.CenterRect(bounds, afterwards)
将图中的特定区域置于这个取景口中。
- bounds
- a 模型坐标中的矩形
- afterwards
- a 动画完成后要执行的动作;可能无效
protected virtual Point ComputeAutoScrollPosition(Point viewPnt)
result = diagramPanel.ComputeAutoScrollPosition(viewPnt)
这种方法用于确定此视图文档中的下个位置, 因为它指的是用户拖曳鼠标的点 。
- viewPnt
- 鼠标点,在控制坐标。
public virtual Rect ComputeBounds(IEnumerable<Part> parts)
result = diagramPanel.ComputeBounds(parts)
计算一个特定部件集合周围的边框矩形。
- parts
返回值: 集合所有部件,或者如果没有部件,则将合并。
protected virtual Rect ComputeDiagramBounds()
result = diagramPanel.ComputeDiagramBounds()
UpdateDiagramBounds使用此方法来确定 DiagramBounds 的新值 。
返回值: a 模型坐标中的矩形
protected virtual GridPattern CreateBackgroundGridPattern()
result = diagramPanel.CreateBackgroundGridPattern()
使用 GridPatternTemplate 数据模板为整幅图创建 GridPattern 。
返回值: the unbound Node holding the GridPattern
public void DoAutoScroll(Point modelPnt)
diagramPanel.DoAutoScroll(modelPnt)
鼠标拖动时自动滚动视图。
- modelPnt
- 模式坐标中当前鼠标点
protected virtual Rect DoMakeVisible(UIElement elt, Rect rectangle)
result = diagramPanel.DoMakeVisible(elt, rectangle)
这种压倒一切的方法改变了位置,使给定的元素在视图中可见.
- elt
- 位于此面板的视觉树上的UIEment
- rectangle
- 要带入元素的区域; 如果这是空的, 则默认为元素母部分的 Bundes 。
public T FindElementAt<T>(Point p, Func<Visual, T> navig, Predicate<T> pred, SearchLayers layers)
result = diagramPanel.FindElementAt(p, navig, pred, layers)
搜索所有在指定点上满足指定上游的部分,并返回匹配的第一个元素.
- p
- a 模型坐标中的点
- navig
- 函数在给定点上被赋予一个元素, 并返回由上方考虑的类型元素 。 函数通常会找到祖先部分或节点 。
- pred
- 这是一个给定类型元素的上游; 如果上游返回为真, 此方法返回该元素; 如果返回为假, 则在给定点继续查找元素。 如果此上游参数无效, 则不过滤元素—— 第一个找到的被返回 。
- layers
- 要搜索的图层类型。 例如, 如果您正在寻找一个节点, 使用该值的节点, 这将通过忽略包含链接的图层来加快搜索速度 。
返回值: 类型元素,如果找不到则无效
public IEnumerable<T> FindElementsAt<T>(Point p, Func<Visual, T> navig, Predicate<T> pred, SearchLayers layers)
result = diagramPanel.FindElementsAt(p, navig, pred, layers)
搜索所有在某个特定点上遇到某个给定的上游的部分,并返回匹配的元素集合.
- p
- a 模型坐标中的点
- navig
- 函数在给定点上被赋予一个元素, 并返回由上方考虑的类型元素 。 函数通常会找到祖先部分或节点 。
- pred
- 这是一个给定类型 的 元素; 如果 属性返回为真, 这种方法将该元素包含在结果中。 如果此上游参数无效, 则不进行元素过滤 — 所有元素都包括在内 。
- layers
- 要搜索的图层类型。 例如, 如果您正在寻找节点, 使用该值的节点, 这将忽略包含链接的图层, 从而加快搜索速度 。
返回值: 类型元素的空集合
public IEnumerable<T> FindElementsIn<T>(Rect rect, Func<Visual, T> navig, Predicate<T> pred, SearchLayers layers)
result = diagramPanel.FindElementsIn(rect, navig, pred, layers)
查找矩形内的元素。
- rect
- a 模型坐标中的矩形
- navig
- 函数在给定点上被赋予一个元素, 并返回由上方考虑的类型元素 。 函数通常会找到祖先部分或节点 。
- pred
- 这是一个给定类型 的上方元素;如果上方返回为真,则该方法将该元素纳入其结果中.
- layers
- 要搜索的图层类型。 例如, 如果您正在寻找节点, 使用该值的节点, 这将忽略包含链接的图层, 从而加快搜索速度 。
返回值: 类型元素的空集合
public IEnumerable<T> FindElementsNear<T>(Point p, double dist, Func<Visual, T> navig, Predicate<T> pred, SearchLayers layers)
result = diagramPanel.FindElementsNear(p, dist, navig, pred, layers)
查找位于点相距范围内的元素。
- p
- a 模型坐标中的点
- dist
- 距离, 在模型坐标中
- navig
- 函数在给定点上被赋予一个元素, 并返回由上方考虑的类型元素 。 函数通常会找到祖先部分或节点 。
- pred
- 这是一个给定类型 的上方元素;如果上方返回为真,则该方法将该元素纳入其结果中.
- layers
- 要搜索的图层类型。 例如, 如果您正在寻找节点, 使用该值的节点, 这将忽略包含链接的图层, 从而加快搜索速度 。
返回值: 类型元素,如果找不到则无效
internal IEnumerable<T> FindElementsWithin<T>(Geometry geo, Func<Visual, T> navig, Predicate<T> pred, SearchLayers layers)
result = diagramPanel.FindElementsWithin(geo, navig, pred, layers)
搜索一个特定几何体内的所有部分,这些部分与某个特定的上位元相会,然后返回一个匹配的元素集合.
- geo
- a 模型坐标中的几何
- navig
- 函数在给定点上被赋予一个元素, 并返回由上方考虑的类型元素 。 函数通常会找到祖先部分或节点 。
- pred
- 这是一个给定类型 的上方元素;如果上方返回为真,则该方法将该元素纳入其结果中.
- layers
- 要搜索的图层类型。 例如, 如果您正在寻找节点, 使用该值的节点, 这将忽略包含链接的图层, 从而加快搜索速度 。
返回值: 类型元素的空集合
public T FindLayer<T>(string name)
result = diagramPanel.FindLayer(name)
查找给定类型的图层,其编号与给定的完全相同。
- name
public T FindPartAt<T>(Point p, Predicate<T> pred, SearchLayers layers)
result = diagramPanel.FindPartAt(p, pred, layers)
返回位于特定点的最前端部分。
- p
- a 模型坐标中的点
- pred
- 这是一个给定类型 的上方; 如果上方返回真实, 此方法返回该部分。 如果此参数无效, 则返回它在该点找到的第一部分 。
- layers
- 要搜索的图层类型。 例如, 如果您正在寻找节点, 使用该值的节点, 这将忽略包含链接的图层, 从而加快搜索速度 。
返回值: 如果没有找到此部分, 则无效
public IEnumerable<T> FindPartsAt<T>(Point p, SearchLayers layers)
result = diagramPanel.FindPartsAt(p, layers)
返回所有位于指定点的部件。
- p
- a 模型坐标中的点
- layers
- 要搜索的图层类型。 例如, 如果您正在寻找节点, 使用该值的节点, 这将忽略包含链接的图层, 从而加快搜索速度 。
返回值: 指定类型中位于点和由 表示的地层类型的所有部件。如果没有找到合格部件,则返回空列表。
public IEnumerable<T> FindPartsIn<T>(Rect rect, SearchFlags srch, SearchInclusion overlap, SearchLayers layers)
result = diagramPanel.FindPartsIn(rect, srch, overlap, layers)
查找位于矩形内的部件。
- rect
- a 模型坐标中的矩形
- srch
- 哪些部分要包括;典型的值可能是SelectableParts。
- overlap
- 与部分所需的几何关系;典型值为内侧.
- layers
- 要搜索的图层类型。 例如, 如果您正在寻找节点, 使用该值的节点, 这将忽略包含链接的图层, 从而加快搜索速度 。
public IEnumerable<T> FindPartsNear<T>(Point p, double dist, SearchFlags srch, SearchInclusion overlap, SearchLayers layers)
result = diagramPanel.FindPartsNear(p, dist, srch, overlap, layers)
找到接近点的部分 。
- p
- a 模型坐标中的点
- dist
- 距离, 在模型坐标中
- srch
- 哪些部分要包括;典型的值可能是SelectableParts。
- overlap
- 与部分所需的几何关系;典型值为内侧.
- layers
- 要搜索的图层类型。 例如, 如果您正在寻找节点, 使用该值的节点, 这将忽略包含链接的图层, 从而加快搜索速度 。
internal IEnumerable<T> FindPartsWithin<T>(Geometry geo, SearchFlags srch, SearchInclusion overlap, SearchLayers layers)
result = diagramPanel.FindPartsWithin(geo, srch, overlap, layers)
搜索所有在某个特定几何中符合一定标准的部件,并返回匹配的部件的集合.
- geo
- a 模型坐标中的几何
- srch
- 哪些部分要包括;典型的值可能是SelectableParts。
- overlap
- 与几何关系所要求的几何;典型值为内相.
- layers
- 要搜索的图层类型。 例如, 如果您正在寻找节点, 使用该值的节点, 这将忽略包含链接的图层, 从而加快搜索速度 。
返回值: 类型元素的空集合
public T GetLayer<T>(string name)
result = diagramPanel.GetLayer(name)
查找给定类型的图层,其编号与给定的代码完全相同,或返回给定类型的默认图层。
- name
protected virtual void InitializeLayers()
diagramPanel.InitializeLayers()
如果本面板的"儿童"集中没有"地层",则创建标准地层集.
public static bool IsDoubleClick(MouseButtonEventArgs e)
result = DiagramPanel.IsDoubleClick(e)
如果鼠标按钮事件代表双击,则此上游是真实的 。
- e
internal bool IsUnoccupied(Rect r, Predicate<Part> skip)
result = diagramPanel.IsUnoccupied(r, skip)
如果指定矩形区域内或相交有节点,则返回真.
- r
- a 模型坐标中的矩形
- skip
- 返回真值的上游, 用于检查碰撞时忽略节点, 通常是您正在考虑移动的文档中的节点; 可能无效考虑所有非临时节点
public void LineDown()
diagramPanel.LineDown()
由 ScrollVerticalLineChange 增加 VerticalOffset 。 (包含 IScrollInfo)
public void LineLeft()
diagramPanel.LineLeft()
减少 HorizontalOffset 由 ScrollHorizontalLineChange. (Implements IScrollInfo.)
public void LineRight()
diagramPanel.LineRight()
由 ScrollHorizontalLineChange 增加 HorizontalOffset 。 (包含 IScrollInfo)
public void LineUp()
diagramPanel.LineUp()
减少 VerticalOffset 由 ScrollVerticalLineChange. (Implements IScrollInfo.)
public BitmapSource MakeBitmap(Size bmpsize, double dpi, Point viewpos, double scale)
result = diagramPanel.MakeBitmap(bmpsize, dpi, viewpos, scale)
返回一个位图,显示特定区域的各个部分,绘制在一定比例。
- bmpsize
- 生成的位图大小
- dpi
- 位图解析度
- viewpos
- a 模型坐标中的点
- scale
- 值为 1.0; 值必须是正数。 数值较小则产生较小的外观部分。
返回值: 国家
public BitmapSource MakeBitmap()
result = diagramPanel.MakeBitmap()
生成一个位图,显示图表中当前可见的部分。
返回值: 国家
public BitmapSource MakeBitmap(Size bmpsize, double dpi, Point viewpos, double scale, Action<BitmapSource> act)
result = diagramPanel.MakeBitmap(bmpsize, dpi, viewpos, scale, act)
返回一个位图,显示特定区域的各个部分,绘制在一定比例。
- bmpsize
- 位图大小, 以四舍五入为最接近的整数
- dpi
- 位图解析度
- viewpos
- a 拟渲染区域左上角的模型坐标点
- scale
- 值为 1.0; 值必须是正数。 数值较小则产生较小的外观部分。
- act
- a 稍后将执行的 & ###BitmapSource###的动作;这可能无效
返回值: 国家
public Rect MakeVisible(Visual visual, Rect rectangle)
result = diagramPanel.MakeVisible(visual, rectangle)
滚动图表,使给定元素()在视图端口。 (Implements IScrollInfo 。)
- visual
- rectangle
- 要带入的元素区域。 这个值通常是 Rect.Empty, 意思是整个视觉元素中与视图端口相匹配的等量 。
返回值: 给Rect打电话的结果)
protected override Size MeasureOverride(Size availableSize)
result = diagramPanel.MeasureOverride(availableSize)
测量此面板中的每个层 。
- availableSize
public void MouseWheelDown()
diagramPanel.MouseWheelDown()
由 ScrollVerticalLineChange 增加 VerticalOffset 的行数倍于鼠标轮旋转时滚动的行数 。 (Implements IScrollInfo.)
public void MouseWheelLeft()
diagramPanel.MouseWheelLeft()
将 HorizontalOffset 减少为鼠标轮旋转所滚动行数的 ScrollHorizontalLineChange 。 (Implements IScrollInfo.)
public void MouseWheelRight()
diagramPanel.MouseWheelRight()
由 ScrollHorizontalLineChange 增加 HorizontalOffset 的行数倍于鼠标轮旋转时滚动的行数 。 (Implements IScrollInfo.)
public void MouseWheelUp()
diagramPanel.MouseWheelUp()
将 VerticalOffset 减少为鼠标轮旋转所滚动行数的 ScrollVerticalLineChange 。 (Implements IScrollInfo.)
protected virtual void OnBoundsAlignmentChanged()
diagramPanel.OnBoundsAlignmentChanged()
当 DiagramBounds 或 HorizontalContentAlignment 或 VerticalContentAlignment 或 伸缩属性改变时,这种超载方法被称为 。
protected virtual void OnDiagramBoundsChanged(RoutedPropertyChangedEventArgs<Rect> e)
diagramPanel.OnDiagramBoundsChanged(e)
Raise the DiagramBoundsChanged event.
- e
protected override void OnDragEnter(DragEventArgs e)
diagramPanel.OnDragEnter(e)
Handle a DragEnter event.
- e
protected override void OnDragLeave(DragEventArgs e)
diagramPanel.OnDragLeave(e)
Handle a DragLeave event.
- e
protected override void OnDragOver(DragEventArgs e)
diagramPanel.OnDragOver(e)
Handle a DragOver event.
- e
protected override void OnGiveFeedback(GiveFeedbackEventArgs e)
diagramPanel.OnGiveFeedback(e)
Handle a GiveFeedback event.
- e
protected virtual void OnInitialLayoutCompleted()
diagramPanel.OnInitialLayoutCompleted()
这种可压倒一切的方法是在第一次布局完成并计算出DiagramBounds之后称为.
protected virtual void OnLayoutCompleted()
diagramPanel.OnLayoutCompleted()
在每次布局完成并计算出DiagramBounds之后,才称为这种压倒一切的方法。
protected override void OnLostMouseCapture(MouseEventArgs e)
diagramPanel.OnLostMouseCapture(e)
处理鼠标捕获丢失时的事件 。
- e
protected override void OnMouseDown(MouseButtonEventArgs e)
diagramPanel.OnMouseDown(e)
处理鼠标下的活动 。
- e
protected override void OnMouseEnter(MouseEventArgs e)
diagramPanel.OnMouseEnter(e)
处理鼠标输入事件 。
- e
protected override void OnMouseMove(MouseEventArgs e)
diagramPanel.OnMouseMove(e)
处理鼠标移动事件 。
- e
protected override void OnMouseUp(MouseButtonEventArgs e)
diagramPanel.OnMouseUp(e)
处理鼠标事件 。
- e
protected override void OnMouseWheel(MouseWheelEventArgs e)
diagramPanel.OnMouseWheel(e)
处理鼠标轮事件。
- e
protected virtual void OnPositionChanged(Point oldpos, Point newpos)
diagramPanel.OnPositionChanged(oldpos, newpos)
当位置改变时,这种压倒性方法被称为“位置”。
- oldpos
- a 模型坐标中的点
- newpos
- a 模型坐标中的点
protected override void OnQueryContinueDrag(QueryContinueDragEventArgs e)
diagramPanel.OnQueryContinueDrag(e)
Handle a QueryContinueDrag event.
- e
protected virtual void OnScaleChanged(double oldscale, double newscale)
diagramPanel.OnScaleChanged(oldscale, newscale)
当缩放变化时,这种压倒性方法被称为.
- oldscale
- 双倍
- newscale
- 双倍
protected virtual void OnSizeChanged(Size oldsize, Size newsize)
diagramPanel.OnSizeChanged(oldsize, newsize)
当面板的实际大小变化时,这种压倒性的方法就称为"取".
- oldsize
- a 元素坐标大小
- newsize
- a 元素坐标大小
protected virtual void OnViewportBoundsChanged(RoutedPropertyChangedEventArgs<Rect> e)
diagramPanel.OnViewportBoundsChanged(e)
Raise the ViewportBoundsChanged event.
- e
protected override void OnVisualParentChanged(DependencyObject oldParent)
diagramPanel.OnVisualParentChanged(oldParent)
每个DiagramPanel都应该在图的视觉树上.
- oldParent
public void PageDown()
diagramPanel.PageDown()
由 ViewportHeight 增加 VerticalOffset 。 (包含 IScrollInfo)
public void PageLeft()
diagramPanel.PageLeft()
减少 HorizontalOffset 由 ViewportWidth. (Implements IScrollInfo.)
public void PageRight()
diagramPanel.PageRight()
由 ViewportWidth 增加 HorizontalOffset 。 (包含 IScrollInfo)
public void PageUp()
diagramPanel.PageUp()
减少 VerticalOffset 由 ViewportHeight. (Implements IScrollInfo.)
public void PerformGesture(GestureModifiers modifiers, Gesture action, Point down, Point up, Diagram other)
diagramPanel.PerformGesture(modifiers, action, down, up, other)
模拟一些鼠标事件 。
- modifiers
- a GestureModifiers 值,控制、移动和 Alt 的组合
- action
- a 手势值, 通常为 * * MouseLeftButton * *; 无值无所取用
- down
- 鼠标下行事件模型坐标中的点;此值必须在 ViewportBounds 内
- up
- 鼠标上调事件的模型坐标点; 该值必须在 ViewportBounds 内
- other
- 鼠标上方的图表。 如果与面板的图表不同, 将会出现一个模拟拖放 。 (这在 WPF 中并不使用真实的 Windows 拖放 。 ) 这可能无法使用面板的图表, 从而将整个手势保留在这个图表中 。
public void SetHorizontalOffset(double offset)
diagramPanel.SetHorizontalOffset(offset)
通过改变位置值来改变 HorizontalOffset 的值 。 (Impments IScrollInfo.)
- offset
public void SetScaleAndPosition(double newscale, Point newpos, int animationtime, Action act)
diagramPanel.SetScaleAndPosition(newscale, newpos, animationtime, act)
以动画设置缩放和位置属性 。
- newscale
- 缩放的新正双值
- newpos
- 位置的新点值
- animationtime
- 毫秒的一分; 如果时间很短, 动画不会发生, 属性被简单地设定
- act
- a 动画完成后要表演的动作; 之后无所作为
public void SetVerticalOffset(double offset)
diagramPanel.SetVerticalOffset(offset)
通过改变位置值来改变 VerticalOffset 的值 。 (Impments IScrollInfo.)
- offset
public Point TransformModelToView(Point p)
result = diagramPanel.TransformModelToView(p)
将模型坐标中的点转换为元素坐标 。
- p
public Point TransformViewToModel(Point p)
result = diagramPanel.TransformViewToModel(p)
将元素坐标中的点转换为模型坐标 。
- p
public void UpdateDiagramBounds()
diagramPanel.UpdateDiagramBounds()
请求更新 DiagramBounds 值, 并呼叫 ComputeDiagramBounds 。
public void ZoomToFit(StretchPolicy policy, Action afterwards)
diagramPanel.ZoomToFit(policy, afterwards)
更改缩放, 使 DiagramBounds 内的所有内容都适合在视图端口内 。
- policy
- 通常为制服值,但可能是 * *=UniformToFill**=
- afterwards
- a 动画完成后要执行的动作;可能无效
事件
public event RoutedPropertyChangedEventHandler<Rect> DiagramBoundsChanged
diagramPanel.DiagramBoundsChanged += handler
当图的界限或对齐发生变化时,会发生此事件 。
public event RoutedPropertyChangedEventHandler<Rect> ViewportBoundsChanged
diagramPanel.ViewportBoundsChanged += handler
当视图端口改变时, 会发生此事件 。
字段
public static readonly DependencyProperty AutoScrollDelayProperty
value = DiagramPanel.AutoScrollDelayProperty
确定AutoScrollDelay的受抚养财产。
public static readonly DependencyProperty AutoScrollRegionProperty
value = DiagramPanel.AutoScrollRegionProperty
确定AutoScrollRegion的受抚养财产。
public static readonly DependencyProperty AutoScrollTimeProperty
value = DiagramPanel.AutoScrollTimeProperty
确定AutoScrollTime的受抚养财产。
public static readonly DependencyProperty CanHorizontallyScrollProperty
value = DiagramPanel.CanHorizontallyScrollProperty
确定CanHorizontallyScroll的受抚养财产。
public static readonly DependencyProperty CanVerticallyScrollProperty
value = DiagramPanel.CanVerticallyScrollProperty
确定CanVerticallyScroll的受抚养财产。
public static readonly RoutedEvent DiagramBoundsChangedEvent
value = DiagramPanel.DiagramBoundsChangedEvent
确定DiagramBoundsChanged路由事件。
public static readonly DependencyProperty DiagramBoundsProperty
value = DiagramPanel.DiagramBoundsProperty
确定DiagramBounds的受抚养财产。
public static readonly DependencyProperty FixedBoundsProperty
value = DiagramPanel.FixedBoundsProperty
确定FixedBounds的受抚养财产。
public static readonly DependencyProperty HorizontalContentAlignmentProperty
value = DiagramPanel.HorizontalContentAlignmentProperty
确定HorizontalContentAlignment的受抚养财产。
public static readonly DependencyProperty MaximumScaleProperty
value = DiagramPanel.MaximumScaleProperty
确定MaximumScale的受抚养财产。
public static readonly DependencyProperty MinimumScaleProperty
value = DiagramPanel.MinimumScaleProperty
确定MinimumScale的受抚养财产。
public static readonly DependencyProperty PaddingProperty
value = DiagramPanel.PaddingProperty
确定Padding的依赖财产。
public static readonly DependencyProperty PositionProperty
value = DiagramPanel.PositionProperty
确定位置依赖属性 。
public static readonly DependencyProperty ScaleProperty
value = DiagramPanel.ScaleProperty
确定天平依赖属性。
public static readonly DependencyProperty ScrollHorizontalLineChangeProperty
value = DiagramPanel.ScrollHorizontalLineChangeProperty
确定ScrollHorizontalLineChange的受抚养财产。
public static readonly DependencyProperty ScrollOwnerProperty
value = DiagramPanel.ScrollOwnerProperty
确定ScrollOwner的受抚养财产。
public static readonly DependencyProperty ScrollVerticalLineChangeProperty
value = DiagramPanel.ScrollVerticalLineChangeProperty
确定ScrollVerticalLineChange的受抚养财产。
public static readonly DependencyProperty StretchProperty
value = DiagramPanel.StretchProperty
确定延伸依赖财产。
public static readonly DependencyProperty VerticalContentAlignmentProperty
value = DiagramPanel.VerticalContentAlignmentProperty
确定VerticalContentAlignment的受抚养财产。
public static readonly RoutedEvent ViewportBoundsChangedEvent
value = DiagramPanel.ViewportBoundsChangedEvent
确定ViewportBoundsChanged路由事件。
public static readonly DependencyProperty ZoomPointProperty
value = DiagramPanel.ZoomPointProperty
确定ZoomPoint的受抚养财产。
public static readonly DependencyProperty ZoomTimeProperty
value = DiagramPanel.ZoomTimeProperty
确定ZoomTime的受抚养财产。