DiagramPanel

StockSharp.Xaml.Diagram.GXDiagram

DiagramPanel是图的中心类,它持有所有部件的图层,负责翻译(滚动)和缩放(分解)及对齐,跟踪图的界限,并有各种命中测试方法来搜索图中特定元素.

继承自: Panel

实现: IScrollInfo

构造函数

DiagramPanel
public DiagramPanel()
diagramPanel = DiagramPanel()

Construct an empty DiagramPanel.

属性

AdornmentLayer
public NodeLayer AdornmentLayer { get; }
value = diagramPanel.AdornmentLayer

获得用于持有Adornments的标准层,通常它位于其他所有层的前面.

AutoScrollDelay
public int AutoScrollDelay { get; set; }
value = diagramPanel.AutoScrollDelay
diagramPanel.AutoScrollDelay = value

自动滚出之前, 需要等待多久或设定多久 。

AutoScrollRegion
public Thickness AutoScrollRegion { get; set; }
value = diagramPanel.AutoScrollRegion
diagramPanel.AutoScrollRegion = value

在会自动使视图滚动的鼠标拖动的面板中获取或设置边距。

AutoScrollTime
public int AutoScrollTime { get; set; }
value = diagramPanel.AutoScrollTime
diagramPanel.AutoScrollTime = value

当鼠标位于 AutoScrollRegion 时, 获取或设定如何快速更改位置 。

CanHorizontallyScroll
public bool CanHorizontallyScroll { get; set; }
value = diagramPanel.CanHorizontallyScroll
diagramPanel.CanHorizontallyScroll = value

获取或设定用户是否可以水平滚动 。 (Implements IScrollInfo.)

CanVerticallyScroll
public bool CanVerticallyScroll { get; set; }
value = diagramPanel.CanVerticallyScroll
diagramPanel.CanVerticallyScroll = value

获取或设定用户是否可以垂直滚动 。 (Implements IScrollInfo.)

Diagram
public Diagram Diagram { get; internal set; }
value = diagramPanel.Diagram
diagramPanel.Diagram = value

获取此面板所在的图表 。

DiagramBounds
public Rect DiagramBounds { get; set; }
value = diagramPanel.DiagramBounds
diagramPanel.DiagramBounds = value

获取或设置图的模型坐标界限。

ExtentHeight
public double ExtentHeight { get; }
value = diagramPanel.ExtentHeight

获取此图可滚动部分的垂直大小, 以控制(独立像素) 单位 。 (Implements IScrollInfo.)

ExtentWidth
public double ExtentWidth { get; }
value = diagramPanel.ExtentWidth

获取此图可滚动部分的横向大小, 控制(独立像素) 单位 。 (Implements IScrollInfo 。)

FixedBounds
public Rect FixedBounds { get; set; }
value = diagramPanel.FixedBounds
diagramPanel.FixedBounds = value

获取或设置一个固定的边框矩由 ComputeDiagramBounds 返回 。

HorizontalContentAlignment
public HorizontalAlignment HorizontalContentAlignment { get; set; }
value = diagramPanel.HorizontalContentAlignment
diagramPanel.HorizontalContentAlignment = value

当 DiagramBounds 宽度小于 ViewportWidth 时, 获取或设定部件在面板中的位置 。

HorizontalOffset
public double HorizontalOffset { get; }
value = diagramPanel.HorizontalOffset

获得图中部分的横向偏移。 (Implements IScrollInfo.)

MaximumScale
public double MaximumScale { get; set; }
value = diagramPanel.MaximumScale
diagramPanel.MaximumScale = value

获取或设定Scale可能要取的最大值。

MinimumScale
public double MinimumScale { get; set; }
value = diagramPanel.MinimumScale
diagramPanel.MinimumScale = value

获取或设定比 Scale 可能取取的零 的最小值 。

Padding
public Thickness Padding { get; set; }
value = diagramPanel.Padding
diagramPanel.Padding = value

获取或设定额外“空”空间的量, 大约为 DiagramBounds 。

Position
public Point Position { get; set; }
value = diagramPanel.Position
diagramPanel.Position = value

获取或设置点,在模型坐标中,显示在这个面板左上角.

Scale
public double Scale { get; set; }
value = diagramPanel.Scale
diagramPanel.Scale = value

获取或设定所有设备的显示比例。

ScrollHorizontalLineChange
public double ScrollHorizontalLineChange { get; set; }
value = diagramPanel.ScrollHorizontalLineChange
diagramPanel.ScrollHorizontalLineChange = value

水平滚动时获取或设定"行"的大小.

ScrollOwner
public ScrollViewer ScrollOwner { get; set; }
value = diagramPanel.ScrollOwner
diagramPanel.ScrollOwner = value

获取或设置让用户滚动此面板的 ScrollViewer 。 (Implements IScrollInfo.)

ScrollVerticalLineChange
public double ScrollVerticalLineChange { get; set; }
value = diagramPanel.ScrollVerticalLineChange
diagramPanel.ScrollVerticalLineChange = value

垂直滚动时获取或设置"行"的大小.

Stretch
public StretchPolicy Stretch { get; set; }
value = diagramPanel.Stretch
diagramPanel.Stretch = value

获取或设定面板的 DiagramBounds 属性的设置方式, 取决于大小 。

VerticalContentAlignment
public VerticalAlignment VerticalContentAlignment { get; set; }
value = diagramPanel.VerticalContentAlignment
diagramPanel.VerticalContentAlignment = value

当 DiagramBounds 宽度小于 ViewportWidth 时, 获取或设定部件在面板中的位置 。

VerticalOffset
public double VerticalOffset { get; }
value = diagramPanel.VerticalOffset

获得图中部分的垂直偏移 。 (Implements IScrollInfo.)

ViewportBounds
public Rect ViewportBounds { get; }
value = diagramPanel.ViewportBounds

获得这个面板的可见部分, 在模型坐标中 。

ViewportHeight
public double ViewportHeight { get; }
value = diagramPanel.ViewportHeight

获取此面板可见部分的垂直大小, 以控制(独立像素) 单位 。 (Impments IScrollInfo.)

ViewportWidth
public double ViewportWidth { get; }
value = diagramPanel.ViewportWidth

获取此面板可见部分的横向大小, 以控制(设备独立像素) 单位 。 (Implements IScrollInfo.)

ZoomPoint
public Point ZoomPoint { get; set; }
value = diagramPanel.ZoomPoint
diagramPanel.ZoomPoint = value

获取或设定在缩放时使用的明显焦点点 。

ZoomTime
public int ZoomTime { get; set; }
value = diagramPanel.ZoomTime
diagramPanel.ZoomTime = value

适应 DiagramBounds 更改或面板大小更改导致内容重新对齐,或调用 Rect 或 Action 时,获取或设定如何快速更改 Sporm 和/或 Place 属性 。

方法

ArrangeOverride
protected override Size ArrangeOverride(Size finalSize)
result = diagramPanel.ArrangeOverride(finalSize)

在此面板中排列每个层 。

finalSize
CenterPart
public void CenterPart(Part part)
diagramPanel.CenterPart(part)

将一个部分的界限放在这个视点内

part
CenterPart
public void CenterPart(Part part, Action afterwards)
diagramPanel.CenterPart(part, afterwards)

将一个部分的界限放在这个视点内

part
afterwards
a 动画完成后要执行的动作;可能无效
CenterRect
public void CenterRect(Rect bounds, Action afterwards)
diagramPanel.CenterRect(bounds, afterwards)

将图中的特定区域置于这个取景口中。

bounds
a 模型坐标中的矩形
afterwards
a 动画完成后要执行的动作;可能无效
ComputeAutoScrollPosition
protected virtual Point ComputeAutoScrollPosition(Point viewPnt)
result = diagramPanel.ComputeAutoScrollPosition(viewPnt)

这种方法用于确定此视图文档中的下个位置, 因为它指的是用户拖曳鼠标的点 。

viewPnt
鼠标点,在控制坐标。
ComputeBounds
public virtual Rect ComputeBounds(IEnumerable<Part> parts)
result = diagramPanel.ComputeBounds(parts)

计算一个特定部件集合周围的边框矩形。

parts

返回值: 集合所有部件,或者如果没有部件,则将合并。

ComputeDiagramBounds
protected virtual Rect ComputeDiagramBounds()
result = diagramPanel.ComputeDiagramBounds()

UpdateDiagramBounds使用此方法来确定 DiagramBounds 的新值 。

返回值: a 模型坐标中的矩形

CreateBackgroundGridPattern
protected virtual GridPattern CreateBackgroundGridPattern()
result = diagramPanel.CreateBackgroundGridPattern()

使用 GridPatternTemplate 数据模板为整幅图创建 GridPattern 。

返回值: the unbound Node holding the GridPattern

DoAutoScroll
public void DoAutoScroll(Point modelPnt)
diagramPanel.DoAutoScroll(modelPnt)

鼠标拖动时自动滚动视图。

modelPnt
模式坐标中当前鼠标点
DoMakeVisible
protected virtual Rect DoMakeVisible(UIElement elt, Rect rectangle)
result = diagramPanel.DoMakeVisible(elt, rectangle)

这种压倒一切的方法改变了位置,使给定的元素在视图中可见.

elt
位于此面板的视觉树上的UIEment
rectangle
要带入元素的区域; 如果这是空的, 则默认为元素母部分的 Bundes 。
FindElementAt``1
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
要搜索的图层类型。 例如, 如果您正在寻找一个节点, 使用该值的节点, 这将通过忽略包含链接的图层来加快搜索速度 。

返回值: 类型元素,如果找不到则无效

FindElementsAt``1
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
要搜索的图层类型。 例如, 如果您正在寻找节点, 使用该值的节点, 这将忽略包含链接的图层, 从而加快搜索速度 。

返回值: 类型元素的空集合

FindElementsIn``1
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
要搜索的图层类型。 例如, 如果您正在寻找节点, 使用该值的节点, 这将忽略包含链接的图层, 从而加快搜索速度 。

返回值: 类型元素的空集合

FindElementsNear``1
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
要搜索的图层类型。 例如, 如果您正在寻找节点, 使用该值的节点, 这将忽略包含链接的图层, 从而加快搜索速度 。

返回值: 类型元素,如果找不到则无效

FindElementsWithin``1
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
要搜索的图层类型。 例如, 如果您正在寻找节点, 使用该值的节点, 这将忽略包含链接的图层, 从而加快搜索速度 。

返回值: 类型元素的空集合

FindLayer``1
public T FindLayer<T>(string name)
result = diagramPanel.FindLayer(name)

查找给定类型的图层,其编号与给定的完全相同。

name
FindPartAt``1
public T FindPartAt<T>(Point p, Predicate<T> pred, SearchLayers layers)
result = diagramPanel.FindPartAt(p, pred, layers)

返回位于特定点的最前端部分。

p
a 模型坐标中的点
pred
这是一个给定类型 的上方; 如果上方返回真实, 此方法返回该部分。 如果此参数无效, 则返回它在该点找到的第一部分 。
layers
要搜索的图层类型。 例如, 如果您正在寻找节点, 使用该值的节点, 这将忽略包含链接的图层, 从而加快搜索速度 。

返回值: 如果没有找到此部分, 则无效

FindPartsAt``1
public IEnumerable<T> FindPartsAt<T>(Point p, SearchLayers layers)
result = diagramPanel.FindPartsAt(p, layers)

返回所有位于指定点的部件。

p
a 模型坐标中的点
layers
要搜索的图层类型。 例如, 如果您正在寻找节点, 使用该值的节点, 这将忽略包含链接的图层, 从而加快搜索速度 。

返回值: 指定类型中位于点和由 表示的地层类型的所有部件。如果没有找到合格部件,则返回空列表。

FindPartsIn``1
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
要搜索的图层类型。 例如, 如果您正在寻找节点, 使用该值的节点, 这将忽略包含链接的图层, 从而加快搜索速度 。
FindPartsNear``1
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
要搜索的图层类型。 例如, 如果您正在寻找节点, 使用该值的节点, 这将忽略包含链接的图层, 从而加快搜索速度 。
FindPartsWithin``1
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
要搜索的图层类型。 例如, 如果您正在寻找节点, 使用该值的节点, 这将忽略包含链接的图层, 从而加快搜索速度 。

返回值: 类型元素的空集合

GetLayer``1
public T GetLayer<T>(string name)
result = diagramPanel.GetLayer(name)

查找给定类型的图层,其编号与给定的代码完全相同,或返回给定类型的默认图层。

name
InitializeLayers
protected virtual void InitializeLayers()
diagramPanel.InitializeLayers()

如果本面板的"儿童"集中没有"地层",则创建标准地层集.

IsDoubleClick
public static bool IsDoubleClick(MouseButtonEventArgs e)
result = DiagramPanel.IsDoubleClick(e)

如果鼠标按钮事件代表双击,则此上游是真实的 。

e
IsUnoccupied
internal bool IsUnoccupied(Rect r, Predicate<Part> skip)
result = diagramPanel.IsUnoccupied(r, skip)

如果指定矩形区域内或相交有节点,则返回真.

r
a 模型坐标中的矩形
skip
返回真值的上游, 用于检查碰撞时忽略节点, 通常是您正在考虑移动的文档中的节点; 可能无效考虑所有非临时节点
LineDown
public void LineDown()
diagramPanel.LineDown()

由 ScrollVerticalLineChange 增加 VerticalOffset 。 (包含 IScrollInfo)

LineLeft
public void LineLeft()
diagramPanel.LineLeft()

减少 HorizontalOffset 由 ScrollHorizontalLineChange. (Implements IScrollInfo.)

LineRight
public void LineRight()
diagramPanel.LineRight()

由 ScrollHorizontalLineChange 增加 HorizontalOffset 。 (包含 IScrollInfo)

LineUp
public void LineUp()
diagramPanel.LineUp()

减少 VerticalOffset 由 ScrollVerticalLineChange. (Implements IScrollInfo.)

MakeBitmap
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; 值必须是正数。 数值较小则产生较小的外观部分。

返回值: 国家

MakeBitmap
public BitmapSource MakeBitmap()
result = diagramPanel.MakeBitmap()

生成一个位图,显示图表中当前可见的部分。

返回值: 国家

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###的动作;这可能无效

返回值: 国家

MakeVisible
public Rect MakeVisible(Visual visual, Rect rectangle)
result = diagramPanel.MakeVisible(visual, rectangle)

滚动图表,使给定元素()在视图端口。 (Implements IScrollInfo 。)

visual
rectangle
要带入的元素区域。 这个值通常是 Rect.Empty, 意思是整个视觉元素中与视图端口相匹配的等量 。

返回值: 给Rect打电话的结果)

MeasureOverride
protected override Size MeasureOverride(Size availableSize)
result = diagramPanel.MeasureOverride(availableSize)

测量此面板中的每个层 。

availableSize
MouseWheelDown
public void MouseWheelDown()
diagramPanel.MouseWheelDown()

由 ScrollVerticalLineChange 增加 VerticalOffset 的行数倍于鼠标轮旋转时滚动的行数 。 (Implements IScrollInfo.)

MouseWheelLeft
public void MouseWheelLeft()
diagramPanel.MouseWheelLeft()

将 HorizontalOffset 减少为鼠标轮旋转所滚动行数的 ScrollHorizontalLineChange 。 (Implements IScrollInfo.)

MouseWheelRight
public void MouseWheelRight()
diagramPanel.MouseWheelRight()

由 ScrollHorizontalLineChange 增加 HorizontalOffset 的行数倍于鼠标轮旋转时滚动的行数 。 (Implements IScrollInfo.)

MouseWheelUp
public void MouseWheelUp()
diagramPanel.MouseWheelUp()

将 VerticalOffset 减少为鼠标轮旋转所滚动行数的 ScrollVerticalLineChange 。 (Implements IScrollInfo.)

OnBoundsAlignmentChanged
protected virtual void OnBoundsAlignmentChanged()
diagramPanel.OnBoundsAlignmentChanged()

当 DiagramBounds 或 HorizontalContentAlignment 或 VerticalContentAlignment 或 伸缩属性改变时,这种超载方法被称为 。

OnDiagramBoundsChanged
protected virtual void OnDiagramBoundsChanged(RoutedPropertyChangedEventArgs<Rect> e)
diagramPanel.OnDiagramBoundsChanged(e)

Raise the DiagramBoundsChanged event.

e
OnDragEnter
protected override void OnDragEnter(DragEventArgs e)
diagramPanel.OnDragEnter(e)

Handle a DragEnter event.

e
OnDragLeave
protected override void OnDragLeave(DragEventArgs e)
diagramPanel.OnDragLeave(e)

Handle a DragLeave event.

e
OnDragOver
protected override void OnDragOver(DragEventArgs e)
diagramPanel.OnDragOver(e)

Handle a DragOver event.

e
OnDrop
protected override void OnDrop(DragEventArgs e)
diagramPanel.OnDrop(e)

处理一个滴出事件。

e
OnGiveFeedback
protected override void OnGiveFeedback(GiveFeedbackEventArgs e)
diagramPanel.OnGiveFeedback(e)

Handle a GiveFeedback event.

e
OnInitialLayoutCompleted
protected virtual void OnInitialLayoutCompleted()
diagramPanel.OnInitialLayoutCompleted()

这种可压倒一切的方法是在第一次布局完成并计算出DiagramBounds之后称为.

OnLayoutCompleted
protected virtual void OnLayoutCompleted()
diagramPanel.OnLayoutCompleted()

在每次布局完成并计算出DiagramBounds之后,才称为这种压倒一切的方法。

OnLostMouseCapture
protected override void OnLostMouseCapture(MouseEventArgs e)
diagramPanel.OnLostMouseCapture(e)

处理鼠标捕获丢失时的事件 。

e
OnMouseDown
protected override void OnMouseDown(MouseButtonEventArgs e)
diagramPanel.OnMouseDown(e)

处理鼠标下的活动 。

e
OnMouseEnter
protected override void OnMouseEnter(MouseEventArgs e)
diagramPanel.OnMouseEnter(e)

处理鼠标输入事件 。

e
OnMouseMove
protected override void OnMouseMove(MouseEventArgs e)
diagramPanel.OnMouseMove(e)

处理鼠标移动事件 。

e
OnMouseUp
protected override void OnMouseUp(MouseButtonEventArgs e)
diagramPanel.OnMouseUp(e)

处理鼠标事件 。

e
OnMouseWheel
protected override void OnMouseWheel(MouseWheelEventArgs e)
diagramPanel.OnMouseWheel(e)

处理鼠标轮事件。

e
OnPositionChanged
protected virtual void OnPositionChanged(Point oldpos, Point newpos)
diagramPanel.OnPositionChanged(oldpos, newpos)

当位置改变时,这种压倒性方法被称为“位置”。

oldpos
a 模型坐标中的点
newpos
a 模型坐标中的点
OnQueryContinueDrag
protected override void OnQueryContinueDrag(QueryContinueDragEventArgs e)
diagramPanel.OnQueryContinueDrag(e)

Handle a QueryContinueDrag event.

e
OnScaleChanged
protected virtual void OnScaleChanged(double oldscale, double newscale)
diagramPanel.OnScaleChanged(oldscale, newscale)

当缩放变化时,这种压倒性方法被称为.

oldscale
双倍
newscale
双倍
OnSizeChanged
protected virtual void OnSizeChanged(Size oldsize, Size newsize)
diagramPanel.OnSizeChanged(oldsize, newsize)

当面板的实际大小变化时,这种压倒性的方法就称为"取".

oldsize
a 元素坐标大小
newsize
a 元素坐标大小
OnViewportBoundsChanged
protected virtual void OnViewportBoundsChanged(RoutedPropertyChangedEventArgs<Rect> e)
diagramPanel.OnViewportBoundsChanged(e)

Raise the ViewportBoundsChanged event.

e
OnVisualParentChanged
protected override void OnVisualParentChanged(DependencyObject oldParent)
diagramPanel.OnVisualParentChanged(oldParent)

每个DiagramPanel都应该在图的视觉树上.

oldParent
PageDown
public void PageDown()
diagramPanel.PageDown()

由 ViewportHeight 增加 VerticalOffset 。 (包含 IScrollInfo)

PageLeft
public void PageLeft()
diagramPanel.PageLeft()

减少 HorizontalOffset 由 ViewportWidth. (Implements IScrollInfo.)

PageRight
public void PageRight()
diagramPanel.PageRight()

由 ViewportWidth 增加 HorizontalOffset 。 (包含 IScrollInfo)

PageUp
public void PageUp()
diagramPanel.PageUp()

减少 VerticalOffset 由 ViewportHeight. (Implements IScrollInfo.)

PerformGesture
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 拖放 。 ) 这可能无法使用面板的图表, 从而将整个手势保留在这个图表中 。
SetHorizontalOffset
public void SetHorizontalOffset(double offset)
diagramPanel.SetHorizontalOffset(offset)

通过改变位置值来改变 HorizontalOffset 的值 。 (Impments IScrollInfo.)

offset
SetScaleAndPosition
public void SetScaleAndPosition(double newscale, Point newpos, int animationtime, Action act)
diagramPanel.SetScaleAndPosition(newscale, newpos, animationtime, act)

以动画设置缩放和位置属性 。

newscale
缩放的新正双值
newpos
位置的新点值
animationtime
毫秒的一分; 如果时间很短, 动画不会发生, 属性被简单地设定
act
a 动画完成后要表演的动作; 之后无所作为
SetVerticalOffset
public void SetVerticalOffset(double offset)
diagramPanel.SetVerticalOffset(offset)

通过改变位置值来改变 VerticalOffset 的值 。 (Impments IScrollInfo.)

offset
StopAutoScroll
public void StopAutoScroll()
diagramPanel.StopAutoScroll()

停止任何正在运行的自动滚动动作 。

TransformModelToView
public Point TransformModelToView(Point p)
result = diagramPanel.TransformModelToView(p)

将模型坐标中的点转换为元素坐标 。

p
TransformViewToModel
public Point TransformViewToModel(Point p)
result = diagramPanel.TransformViewToModel(p)

将元素坐标中的点转换为模型坐标 。

p
UpdateDiagramBounds
public void UpdateDiagramBounds()
diagramPanel.UpdateDiagramBounds()

请求更新 DiagramBounds 值, 并呼叫 ComputeDiagramBounds 。

ZoomToFit
public void ZoomToFit()
diagramPanel.ZoomToFit()

更改缩放, 使 DiagramBounds 内的所有内容都适合在视图端口内 。

ZoomToFit
public void ZoomToFit(StretchPolicy policy, Action afterwards)
diagramPanel.ZoomToFit(policy, afterwards)

更改缩放, 使 DiagramBounds 内的所有内容都适合在视图端口内 。

policy
通常为制服值,但可能是 * *=UniformToFill**=
afterwards
a 动画完成后要执行的动作;可能无效

事件

DiagramBoundsChanged
public event RoutedPropertyChangedEventHandler<Rect> DiagramBoundsChanged
diagramPanel.DiagramBoundsChanged += handler

当图的界限或对齐发生变化时,会发生此事件 。

ViewportBoundsChanged
public event RoutedPropertyChangedEventHandler<Rect> ViewportBoundsChanged
diagramPanel.ViewportBoundsChanged += handler

当视图端口改变时, 会发生此事件 。

字段

AutoScrollDelayProperty
public static readonly DependencyProperty AutoScrollDelayProperty
value = DiagramPanel.AutoScrollDelayProperty

确定AutoScrollDelay的受抚养财产。

AutoScrollRegionProperty
public static readonly DependencyProperty AutoScrollRegionProperty
value = DiagramPanel.AutoScrollRegionProperty

确定AutoScrollRegion的受抚养财产。

AutoScrollTimeProperty
public static readonly DependencyProperty AutoScrollTimeProperty
value = DiagramPanel.AutoScrollTimeProperty

确定AutoScrollTime的受抚养财产。

CanHorizontallyScrollProperty
public static readonly DependencyProperty CanHorizontallyScrollProperty
value = DiagramPanel.CanHorizontallyScrollProperty

确定CanHorizontallyScroll的受抚养财产。

CanVerticallyScrollProperty
public static readonly DependencyProperty CanVerticallyScrollProperty
value = DiagramPanel.CanVerticallyScrollProperty

确定CanVerticallyScroll的受抚养财产。

DiagramBoundsChangedEvent
public static readonly RoutedEvent DiagramBoundsChangedEvent
value = DiagramPanel.DiagramBoundsChangedEvent

确定DiagramBoundsChanged路由事件。

DiagramBoundsProperty
public static readonly DependencyProperty DiagramBoundsProperty
value = DiagramPanel.DiagramBoundsProperty

确定DiagramBounds的受抚养财产。

FixedBoundsProperty
public static readonly DependencyProperty FixedBoundsProperty
value = DiagramPanel.FixedBoundsProperty

确定FixedBounds的受抚养财产。

HorizontalContentAlignmentProperty
public static readonly DependencyProperty HorizontalContentAlignmentProperty
value = DiagramPanel.HorizontalContentAlignmentProperty

确定HorizontalContentAlignment的受抚养财产。

MaximumScaleProperty
public static readonly DependencyProperty MaximumScaleProperty
value = DiagramPanel.MaximumScaleProperty

确定MaximumScale的受抚养财产。

MinimumScaleProperty
public static readonly DependencyProperty MinimumScaleProperty
value = DiagramPanel.MinimumScaleProperty

确定MinimumScale的受抚养财产。

PaddingProperty
public static readonly DependencyProperty PaddingProperty
value = DiagramPanel.PaddingProperty

确定Padding的依赖财产。

PositionProperty
public static readonly DependencyProperty PositionProperty
value = DiagramPanel.PositionProperty

确定位置依赖属性 。

ScaleProperty
public static readonly DependencyProperty ScaleProperty
value = DiagramPanel.ScaleProperty

确定天平依赖属性。

ScrollHorizontalLineChangeProperty
public static readonly DependencyProperty ScrollHorizontalLineChangeProperty
value = DiagramPanel.ScrollHorizontalLineChangeProperty

确定ScrollHorizontalLineChange的受抚养财产。

ScrollOwnerProperty
public static readonly DependencyProperty ScrollOwnerProperty
value = DiagramPanel.ScrollOwnerProperty

确定ScrollOwner的受抚养财产。

ScrollVerticalLineChangeProperty
public static readonly DependencyProperty ScrollVerticalLineChangeProperty
value = DiagramPanel.ScrollVerticalLineChangeProperty

确定ScrollVerticalLineChange的受抚养财产。

StretchProperty
public static readonly DependencyProperty StretchProperty
value = DiagramPanel.StretchProperty

确定延伸依赖财产。

VerticalContentAlignmentProperty
public static readonly DependencyProperty VerticalContentAlignmentProperty
value = DiagramPanel.VerticalContentAlignmentProperty

确定VerticalContentAlignment的受抚养财产。

ViewportBoundsChangedEvent
public static readonly RoutedEvent ViewportBoundsChangedEvent
value = DiagramPanel.ViewportBoundsChangedEvent

确定ViewportBoundsChanged路由事件。

ZoomPointProperty
public static readonly DependencyProperty ZoomPointProperty
value = DiagramPanel.ZoomPointProperty

确定ZoomPoint的受抚养财产。

ZoomTimeProperty
public static readonly DependencyProperty ZoomTimeProperty
value = DiagramPanel.ZoomTimeProperty

确定ZoomTime的受抚养财产。