Table of Contents

Class DiagramBase

Namespace
H.Controls.Diagram.Extension
Assembly
H.Controls.Diagram.Extension.dll
public abstract class DiagramBase : DisplayBindableBase, INotifyPropertyChanged, IDable, IDiagram, ICloneable
Inheritance
DiagramBase
Implements
Derived
Inherited Members
Extension Methods

Constructors

DiagramBase()

public DiagramBase()

Properties

AlignmentCommand

[JsonIgnore]
[Display(Name = "自动对齐", GroupName = "操作", Order = 5)]
public virtual RelayCommand AlignmentCommand { get; }

Property Value

RelayCommand

ApplayLinkStyleCommand

public RelayCommand ApplayLinkStyleCommand { get; }

Property Value

RelayCommand

ApplayNodeStyleCommand

public RelayCommand ApplayNodeStyleCommand { get; }

Property Value

RelayCommand

ApplayPortStyleCommand

public RelayCommand ApplayPortStyleCommand { get; }

Property Value

RelayCommand

ApplyDiagramThemeCommand

public RelayCommand ApplyDiagramThemeCommand { get; }

Property Value

RelayCommand

BackgroundSelectedIndex

public int BackgroundSelectedIndex { get; set; }

Property Value

int

ClearCommand

[Display(Name = "清空", GroupName = "操作", Order = 5, Description = "点击此功能,删除所有节点、连线和端口")]
public virtual RelayCommand ClearCommand { get; }

Property Value

RelayCommand

DeleteCommand

[Display(Name = "删除", GroupName = "操作", Order = 4, Description = "点击此功能,删除选中的节点、连线或端口")]
public virtual RelayCommand DeleteCommand { get; }

Property Value

RelayCommand

DeleteReferenceTemplateCommand

public RelayCommand DeleteReferenceTemplateCommand { get; }

Property Value

RelayCommand

DiagramThemeGroups

[JsonIgnore]
public ObservableCollection<DiagramThemeGroup> DiagramThemeGroups { get; set; }

Property Value

ObservableCollection<DiagramThemeGroup>

Height

[Display(Name = "面板高度", GroupName = "基础信息", Order = 0)]
public double Height { get; set; }

Property Value

double

ItemsChangedCommand

public RelayCommand ItemsChangedCommand { get; }

Property Value

RelayCommand

Layout

[JsonIgnore]
public ILayout Layout { get; set; }

Property Value

ILayout

Layouts

[JsonIgnore]
[Browsable(false)]
public ObservableCollection<ILayout> Layouts { get; set; }

Property Value

ObservableCollection<ILayout>

LinkDrawer

说明

[JsonIgnore]
public ILinkDrawer LinkDrawer { get; set; }

Property Value

ILinkDrawer

LinkDrawers

[JsonIgnore]
[Browsable(false)]
public ObservableCollection<ILinkDrawer> LinkDrawers { get; set; }

Property Value

ObservableCollection<ILinkDrawer>

LoadDefaultCommand

[Display(Name = "默认样式", GroupName = "操作", Order = 6, Description = "点击此功能,恢复所有节点、连线和端口默认样式")]
public RelayCommand LoadDefaultCommand { get; }

Property Value

RelayCommand

LocateCenterCallBack

[JsonIgnore]
public Action<Point> LocateCenterCallBack { get; set; }

Property Value

Action<Point>

LocateCenterCommand

[Display(Name = "平移定位", GroupName = "操作", Order = 5)]
public virtual RelayCommand LocateCenterCommand { get; }

Property Value

RelayCommand

LocateRectCallBack

[JsonIgnore]
public Action<Rect> LocateRectCallBack { get; set; }

Property Value

Action<Rect>

Location

public Point Location { get; set; }

Property Value

Point

NextCommand

[JsonIgnore]
[Display(Name = "下一个", GroupName = "操作", Order = 5)]
public virtual RelayCommand NextCommand { get; }

Property Value

RelayCommand

NodeGroups

数据源

[JsonIgnore]
public ObservableCollection<NodeGroup> NodeGroups { get; set; }

Property Value

ObservableCollection<NodeGroup>

NodeType

[JsonIgnore]
public Type NodeType { get; set; }

Property Value

Type

Nodes

工具拖动数据源

[JsonIgnore]
public ObservableCollection<Node> Nodes { get; set; }

Property Value

ObservableCollection<Node>

ProviewCommand

[JsonIgnore]
[Display(Name = "上一个", GroupName = "操作", Order = 5)]
public virtual RelayCommand ProviewCommand { get; }

Property Value

RelayCommand

ReferenceTemplateNodeDatas

[JsonIgnore]
public ObservableCollection<FlowableDiagramTemplateNodeData> ReferenceTemplateNodeDatas { get; set; }

Property Value

ObservableCollection<FlowableDiagramTemplateNodeData>

Root

[JsonIgnore]
public TreeNodeBase<Part> Root { get; set; }

Property Value

TreeNodeBase<Part>

SelectedPart

[JsonIgnore]
public Part SelectedPart { get; set; }

Property Value

Part

SelectedPartChangedCommand

public RelayCommand SelectedPartChangedCommand { get; }

Property Value

RelayCommand

SelectedTreeNodeChanged

public RelayCommand SelectedTreeNodeChanged { get; }

Property Value

RelayCommand

TypeName

public string TypeName { get; set; }

Property Value

string

Vip

public int Vip { get; set; }

Property Value

int

Width

[Display(Name = "面板宽度", GroupName = "基础信息", Order = 0)]
public double Width { get; set; }

Property Value

double

ZoomAllCommand

[Display(Name = "缩放定位", GroupName = "操作", Order = 5)]
public virtual RelayCommand ZoomAllCommand { get; }

Property Value

RelayCommand

Methods

Aligment()

public virtual void Aligment()

Clear()

public void Clear()

Clone()

Creates a new object that is a copy of the current instance.

public object Clone()

Returns

object

A new object that is a copy of this instance.

CreateDiagramThemes()

public virtual IEnumerable<DiagramThemeGroup> CreateDiagramThemes()

Returns

IEnumerable<DiagramThemeGroup>

CreateFromXml(string, Type)

public static IDiagram CreateFromXml(string xml, Type type)

Parameters

xml string
type Type

Returns

IDiagram

CreateFromXml<T>(string)

public static T CreateFromXml<T>(string xml) where T : class, IDiagram

Parameters

xml string

Returns

T

Type Parameters

T

CreateLayousSource()

protected virtual IEnumerable<ILayout> CreateLayousSource()

Returns

IEnumerable<ILayout>

CreateLinkDrawerSource()

protected virtual IEnumerable<ILinkDrawer> CreateLinkDrawerSource()

Returns

IEnumerable<ILinkDrawer>

CreateNodeGroups()

protected virtual IEnumerable<NodeGroup> CreateNodeGroups()

Returns

IEnumerable<NodeGroup>

DeleteReferenceTemplate(FlowableDiagramTemplateNodeData)

public void DeleteReferenceTemplate(FlowableDiagramTemplateNodeData data)

Parameters

data FlowableDiagramTemplateNodeData

FromXml(XmlElement, XmlDocument, Func<PropertyInfo, object, bool>)

public void FromXml(XmlElement xmlEle, XmlDocument cnt, Func<PropertyInfo, object, bool> match = null)

Parameters

xmlEle XmlElement
cnt XmlDocument
match Func<PropertyInfo, object, bool>

LoadNodes(IEnumerable<INodeData>, IEnumerable<ILinkData>)

protected virtual IEnumerable<Node> LoadNodes(IEnumerable<INodeData> nodeDatas, IEnumerable<ILinkData> linkDatas)

Parameters

nodeDatas IEnumerable<INodeData>
linkDatas IEnumerable<ILinkData>

Returns

IEnumerable<Node>

LocateCenter()

public void LocateCenter()

LocateCenter(Part)

public void LocateCenter(Part part)

Parameters

part Part

LocateRect(Part)

public void LocateRect(Part part)

Parameters

part Part

RefreshRoot()

public virtual void RefreshRoot()

SaveDatas(IEnumerable<Node>)

protected virtual Tuple<IEnumerable<INodeData>, IEnumerable<ILinkData>> SaveDatas(IEnumerable<Node> nodes)

Parameters

nodes IEnumerable<Node>

Returns

Tuple<IEnumerable<INodeData>, IEnumerable<ILinkData>>

ToXml(XmlElement, XmlDocument, Func<PropertyInfo, object, bool>)

public void ToXml(XmlElement xmlEle, XmlDocument cnt, Func<PropertyInfo, object, bool> match = null)

Parameters

xmlEle XmlElement
cnt XmlDocument
match Func<PropertyInfo, object, bool>

ToXmlString()

public string ToXmlString()

Returns

string

ZoomAll()

public void ZoomAll()