    

 ## On this page

  

 

 # Class Connector&lt;TProperty\\&gt;

 Last update: 16.07.2025 

Namespace: [VM.Managed.DAFUL](VM.Managed.DAFUL.md)  
Assembly: VMDFBase.dll

This class is to represent the connector.

```csharp
public abstract class Connector<TProperty> : Entity<TProperty>, IObservableObject, IDisposableObject, ILinkable, ILinkContainerEvent, IVerifiable, IHistoryObjectSerializable, IAttributeContainer, IContainer, IEntity, IEntityBase, IObjectBase, IObject, ILinkContainer, IOwned, IHasID, IEventProvider, IHasKeyObject, IHasName, IEnabled, IHasComment, IVisible, IDocumentOwner, INamed, INavigatorItem, IVisible, IMultiChangable, IHasProperty, IGroup, IDraw, IDrawIcon, IReferencable, ITransformable, IConnector, IEntityRelation, IGenerable, IArgument, IReportable, IFlip where TProperty : Property, IArgument, new()

```

#### Type Parameters

`TProperty`

The type of the property.

#### Inheritance

[object](https://learn.microsoft.com/dotnet/api/system.object) ← ObservableObject ← LinkableBase ← ObjectBase ← Object&lt;EntityEventCore&gt; ← ContainerObject&lt;EntityEventCore&gt; ← EntityBase ← Entity&lt;TProperty&gt; ← [Connector&lt;TProperty&gt;](VM.Managed.DAFUL.Connector-1.md)

#### Implements

IObservableObject, IDisposableObject, ILinkable, ILinkContainerEvent, IVerifiable, IHistoryObjectSerializable, IAttributeContainer, IContainer, IEntity, IEntityBase, IObjectBase, IObject, ILinkContainer, IOwned, IHasID, IEventProvider, IHasKeyObject, IHasName, IEnabled, IHasComment, IVisible, IDocumentOwner, INamed, INavigatorItem, IVisible, IMultiChangable, IHasProperty, IGroup, IDraw, IDrawIcon, IReferencable, ITransformable, [IConnector](VM.Managed.DAFUL.IConnector.md), IEntityRelation, IGenerable, IArgument, [IReportable](VM.Managed.DAFUL.IReportable.md), IFlip

#### Inherited Members

Entity&lt;TProperty&gt;.Initialize(Unit.ConvertFactor), Entity&lt;TProperty&gt;.GetUnnamedObjectName(object), Entity&lt;TProperty&gt;.FindLocal(string), Entity&lt;TProperty&gt;.Property, EntityBase.Initialize(Unit.ConvertFactor), EntityBase.SetOldNameWithNewEntity(ObjectBase, ObjectBase), EntityBase.PropertyRequestUpdate(object, LinkEventArgs), EntityBase.OnDeserializationForAttribute(), EntityBase.OnUpdatePropertyImpl(Property, LinkEventArgs), EntityBase.LinkRequestDestroying(object, LinkEventArgs), EntityBase.GetModelNavigatorInformationImpl(XmlDocument, XmlElement, bool), EntityBase.FixUp(ObjectBase), EntityBase.FindLocal(string), EntityBase.WriteTemplateImpl(XmlWriter), EntityBase.ReadTemplateImpl(XmlReader), EntityBase.LinkAddedToDocument(object, AddToDocEventArgs), EntityBase.OnDeserialization(object), EntityBase.Name, EntityBase.FullName, EntityBase.NonSymmetricName, EntityBase.DisplayName, EntityBase.IsEnabled, EntityBase.Comment, EntityBase.HasLayerExplicitly, EntityBase.UntypedProperty, EntityBase.IsFileProperty, EntityBase.Layer, EntityBase.IsVisible, ContainerObject&lt;EntityEventCore&gt;.Find(string), ContainerObject&lt;EntityEventCore&gt;.FindLocal(string), ContainerObject&lt;EntityEventCore&gt;.GetUnnamedObjectName(object), ContainerObject&lt;EntityEventCore&gt;.GetNewEntityName(string), ContainerObject&lt;EntityEventCore&gt;.GetNewEntityName(string, bool, int), ContainerObject&lt;EntityEventCore&gt;.GetNewEntityName(string, bool, int, int), Object&lt;EntityEventCore&gt;.GetKey(), Object&lt;EntityEventCore&gt;.Initialize(Unit.ConvertFactor), Object&lt;EntityEventCore&gt;.SetIconColor(Canvas), Object&lt;EntityEventCore&gt;.OnDeserialization(object), Object&lt;EntityEventCore&gt;.CustomGetObjectData(SerializationInfo, StreamingContext), Object&lt;EntityEventCore&gt;.RollbackEvent(), Object&lt;EntityEventCore&gt;.OnDeserializedCore(object), Object&lt;EntityEventCore&gt;.Key, Object&lt;EntityEventCore&gt;.UntypedEventCore, Object&lt;EntityEventCore&gt;.EventCore, Object&lt;EntityEventCore&gt;.Attributes, ObjectBase.ReplaceEventCore(ObjectEventCore), ObjectBase.SetModifiedCore(ModifiedResult.ModifiedType), ObjectBase.AddPostDeserialize(StreamingContext), ObjectBase.LinkAddedToDocumentCore(IOwned, bool), ObjectBase.SetModified(ModifiedResult.ModifiedType), ObjectBase.SetModified(), ObjectBase.SetModified(ModifiedResult.ModifiedType, IDocument), ObjectBase.DestroyObject(object, LinkEventArgs), ObjectBase.DestroyObject(DestroyEventArgs), ObjectBase.DestroyObject(), ObjectBase.Initialize(Unit.ConvertFactor), ObjectBase.FixUp(ObjectBase), ObjectBase.DoWorkAfterUpdateContents(), ObjectBase.SetOldNameWithNewEntity(ObjectBase, ObjectBase), ObjectBase.SetIconColor(Canvas), ObjectBase.RemoveFromCreatedList(), ObjectBase.PostAddToDocument(), ObjectBase.PostRemoveFromDocument(Document), ObjectBase.GetArgumentList(LinkedList&lt;ObjectBase&gt;), ObjectBase.ResetInvalidEntity(), ObjectBase.OnDeserialization(object), ObjectBase.IsSerializableEvent(Delegate), ObjectBase.CustomGetObjectData(SerializationInfo, StreamingContext), ObjectBase.CheckAndUpdateLink(HashSet&lt;ObjectBase&gt;), ObjectBase.Verify(VerifiedResult), ObjectBase.ConnectProxy(), ObjectBase.RollbackEvent(), ObjectBase.LinkRequestUpdating(object, LinkEventArgs), ObjectBase.LinkRequestUpdate(object, LinkEventArgs), ObjectBase.LinkRequestDestroying(object, LinkEventArgs), ObjectBase.LinkRequestDestroy(object, LinkEventArgs), ObjectBase.LinkAddedToDocument(object, AddToDocEventArgs), ObjectBase.LinkRemovedFromDocument(object, RemoveFromDocEventArgs), ObjectBase.DisposeManagedResources(), ObjectBase.GetDestroyEventExtraData(), ObjectBase.OnLinkReserved(ILink, object, EventArgs), ObjectBase.CreateEntityWhenUpdateContents(Action), ObjectBase.GetObjectByKey(UIntPtr), ObjectBase.FindObjectOnXmlDeserialize(string), ObjectBase.UpdateContents(XmlReader, ObjectBase, string), ObjectBase.UpdateContents(XmlReader, ObjectBase), ObjectBase.UpdateContents(string, string), ObjectBase.UpdateContents(string), ObjectBase.SetFlagWhenXMLFile(string, bool), ObjectBase.IsEqualArray&lt;T&gt;(T\[\], T\[\]), ObjectBase.IsEqualList(List&lt;double&gt;, List&lt;double&gt;), ObjectBase.SetContainer(IOwned, bool), ObjectBase.GetTargetListForUpdate(), ObjectBase.SkipUpdateObjectImpl(), ObjectBase.raise\_OnUpdating(object, LinkEventArgs), ObjectBase.raise\_OnUpdate(object, LinkEventArgs), ObjectBase.raise\_OnDestroying(object, LinkEventArgs), ObjectBase.raise\_OnDestroy(object, LinkEventArgs), ObjectBase.raise\_Destroying(object, Identifier), ObjectBase.raise\_OnAdded(object, AddToDocEventArgs), ObjectBase.raise\_OnRemoved(object, RemoveFromDocEventArgs), ObjectBase.raise\_OnContentsUpdated(object, EventArgs), ObjectBase.Dispose(bool), ObjectBase.SkipModified, ObjectBase.ClearChildInfoBeforeDeserialize, ObjectBase.KeyImpl, ObjectBase.ID, ObjectBase.TopologyEntityTypeName, ObjectBase.ObjectStateForCircularError, ObjectBase.ObjectState, ObjectBase.IsChildExternable, ObjectBase.IsExternable, ObjectBase.Container, ObjectBase.Owner, ObjectBase.Document, ObjectBase.UntypedEventCore, ObjectBase.KernelKey, ObjectBase.Key, ObjectBase.OnContentsUpdated, ObjectBase.OnRemoved, ObjectBase.OnAdded, ObjectBase.Destroying, ObjectBase.OnDestroy, ObjectBase.OnDestroying, ObjectBase.OnUpdate, ObjectBase.OnUpdating, LinkableBase.OnDeserialization(object), ObservableObject.Dispose(), ObservableObject.RaisePropertyChanged(string), ObservableObject.RaisePropertyChanged(string, object, object), ObservableObject.Dispose(bool), ObservableObject.DisposeManagedResources(), ObservableObject.DisposeUnmanagedResources(), ObservableObject.IsDisposed, ObservableObject.TryDisposing, ObservableObject.Disposed, ObservableObject.Disposing, ObservableObject.PropertyChanged

#### Extension Methods

[LinkPropertyItemCache.GetLinkProperties(object, LinkPropertyType)](VM.Models.Pre.Cache.LinkPropertyItemCache.md#VM_Models_Pre_Cache_LinkPropertyItemCache_GetLinkProperties_System_Object_VM_Models_Pre_LinkPropertyType_), [LinkPropertyItemCache.GetLinkPropertiesAndValues(object, LinkPropertyType)](VM.Models.Pre.Cache.LinkPropertyItemCache.md#VM_Models_Pre_Cache_LinkPropertyItemCache_GetLinkPropertiesAndValues_System_Object_VM_Models_Pre_LinkPropertyType_), [LinkPropertyItemCache.GetLinkedObjects&lt;T&gt;(object, LinkPropertyType)](VM.Models.Pre.Cache.LinkPropertyItemCache.md#VM_Models_Pre_Cache_LinkPropertyItemCache_GetLinkedObjects__1_System_Object_VM_Models_Pre_LinkPropertyType_)

## Constructors

### Connector()

Initializes a new instance of the  class.

```csharp
protected Connector()

```

### Connector(string)

Initializes a new instance of the  class.

```csharp
public Connector(string strName)

```

#### Parameters

`strName` [string](https://learn.microsoft.com/dotnet/api/system.string)

Name of the connector.

## Properties

### ActionMarker

Gets or sets the action marker.

```csharp
public Marker ActionMarker { get; set; }

```

#### Property Value

[Marker](VM.Managed.DAFUL.Marker.md)

### ArgumentType

Gets the type of the argument

```csharp
public ArgumentTypes ArgumentType { get; }

```

#### Property Value

ArgumentTypes

### BaseMarker

Gets or sets the base marker.

```csharp
public Marker BaseMarker { get; set; }

```

#### Property Value

[Marker](VM.Managed.DAFUL.Marker.md)

### CanSwitchImpl

```csharp
protected virtual bool CanSwitchImpl { get; }

```

#### Property Value

[bool](https://learn.microsoft.com/dotnet/api/system.boolean)

### CanWriteToOutFileImpl

```csharp
protected virtual bool CanWriteToOutFileImpl { get; }

```

#### Property Value

[bool](https://learn.microsoft.com/dotnet/api/system.boolean)

### ConnectorReferenceMarker

Gets or sets the reference marker.

```csharp
public virtual IMarker ConnectorReferenceMarker { get; }

```

#### Property Value

IMarker

### Generable

Gets a value indicating whether this instance is generable.

```csharp
public virtual bool Generable { get; }

```

#### Property Value

[bool](https://learn.microsoft.com/dotnet/api/system.boolean)

### HasLayerExplicitly

Gets a value indicating whether object has a layer explicitly.

```csharp
protected override bool HasLayerExplicitly { get; }

```

#### Property Value

[bool](https://learn.microsoft.com/dotnet/api/system.boolean)

### Hide

Gets or sets a value indicating whether this instance is hide.

```csharp
public bool Hide { get; set; }

```

#### Property Value

[bool](https://learn.microsoft.com/dotnet/api/system.boolean)

### Layer

Gets or sets the layer.

```csharp
public override Layer Layer { get; set; }

```

#### Property Value

Layer

### PreventDuplicatedRBE

Gets a value whether this instance prevent duplicated RBE.

```csharp
public virtual bool PreventDuplicatedRBE { get; }

```

#### Property Value

[bool](https://learn.microsoft.com/dotnet/api/system.boolean)

### Referencable

Gets a value indicating whether this  is referencable.

```csharp
public bool Referencable { get; }

```

#### Property Value

[bool](https://learn.microsoft.com/dotnet/api/system.boolean)

### ReferenceType

Gets the type of the array for argument.

```csharp
public virtual string ReferenceType { get; }

```

#### Property Value

[string](https://learn.microsoft.com/dotnet/api/system.string)

### ReportTypeImpl

Gets the report type.

```csharp
protected abstract IReportable.ReportEntityType ReportTypeImpl { get; }

```

#### Property Value

[IReportable](VM.Managed.DAFUL.IReportable.md).[ReportEntityType](VM.Managed.DAFUL.IReportable.ReportEntityType.md)

### Visible

Gets a value indicating whether this  is visible.

```csharp
public bool Visible { get; }

```

#### Property Value

[bool](https://learn.microsoft.com/dotnet/api/system.boolean)

## Methods

### Draw(Canvas)

Draws the icon.

```csharp
public virtual void Draw(Canvas canvas)

```

#### Parameters

`canvas` Canvas

The canvas has icon information.

### FindLocal(string)

Finds an object that matches a specified name in local.

```csharp
public override IObjectBase FindLocal(string strName)

```

#### Parameters

`strName` [string](https://learn.microsoft.com/dotnet/api/system.string)

Name to search for.

#### Returns

IObjectBase

An object that matches a specified name.

### GetLayerImpl()

Gets the layer \[Implementation\].

```csharp
protected virtual Layer GetLayerImpl()

```

#### Returns

Layer

The layer.

### GetModelNavigatorInformationImpl(XmlDocument, XmlElement, bool)

Gets the object information for model navigator \[implementation\].

```csharp
protected override bool GetModelNavigatorInformationImpl(XmlDocument xmlDom, XmlElement xmlEle, bool bHasChild)

```

#### Parameters

`xmlDom` [XmlDocument](https://learn.microsoft.com/dotnet/api/system.xml.xmldocument)

The XmlDocument for object.

`xmlEle` [XmlElement](https://learn.microsoft.com/dotnet/api/system.xml.xmlelement)

The XmlElement for object.

`bHasChild` [bool](https://learn.microsoft.com/dotnet/api/system.boolean)

if set to `true` \[has child\].

#### Returns

[bool](https://learn.microsoft.com/dotnet/api/system.boolean)

`true` if success; otherwise, `false`.

### GetTargetListForUpdate()

Gets the update objects.

```csharp
public override List<IEventProvider> GetTargetListForUpdate()

```

#### Returns

[List](https://learn.microsoft.com/dotnet/api/system.collections.generic.list-1)&lt;IEventProvider&gt;

### Initialize(ConvertFactor)

Initializes member through unit convert factor.

```csharp
public override void Initialize(Unit.ConvertFactor factor)

```

#### Parameters

`factor` Unit.ConvertFactor

The unit convert factor.

### Instantiate(Reference, Canvas)

Instantiates the specified reference.

```csharp
public void Instantiate(Reference reference, Canvas canvas)

```

#### Parameters

`reference` Reference

The reference.

`canvas` Canvas

The canvas.

### LinkRequestUpdate(object, LinkEventArgs)

Request for update the linked object.

```csharp
protected override void LinkRequestUpdate(object objNotifier, LinkEventArgs arg)

```

#### Parameters

`objNotifier` [object](https://learn.microsoft.com/dotnet/api/system.object)

The linked object.

`arg` LinkEventArgs

The  instance containing the event data.

### MakeReference(LinkedList&lt;Reference&gt;)

Makes the reference.

```csharp
public void MakeReference(LinkedList<Reference> lstRef)

```

#### Parameters

`lstRef` [LinkedList](https://learn.microsoft.com/dotnet/api/system.collections.generic.linkedlist-1)&lt;Reference&gt;

The referece container.

### MakeReferenceImpl(LinkedList&lt;Reference&gt;)

Makes the reference \[implementation\].

```csharp
protected virtual void MakeReferenceImpl(LinkedList<Reference> lstRef)

```

#### Parameters

`lstRef` [LinkedList](https://learn.microsoft.com/dotnet/api/system.collections.generic.linkedlist-1)&lt;Reference&gt;

The container.

### ReDraw()

Redraw.

```csharp
public virtual void ReDraw()

```

### SetLayerImpl(Layer)

Sets the layer \[Implementation\].

```csharp
protected virtual void SetLayerImpl(Layer layer)

```

#### Parameters

`layer` Layer

The layer.

### SwitchImpl()

```csharp
protected virtual void SwitchImpl()

```

### Verify(VerifiedResult)

Verify.

```csharp
protected override void Verify(VerifiedResult vr)

```

#### Parameters

`vr` VerifiedResult

The Verified result.