    

 ## On this page

  

 

 # Class ContactUserSubroutine

 Last update: 09.03.2026 

<a id="VM_Managed_DAFUL_Contact_ContactUserSubroutine"></a>

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

This class is to represent the contact charactoristic properties of user subroutine type.

```csharp
public sealed class ContactUserSubroutine : ContactFunction, IObservableObject, IDisposableObject, ILinkable, IObject, ILinkContainer, IOwned, IHasID, IEventProvider, ILinkContainerEvent, IVerifiable, IReservable

```

#### Inheritance

object ← ObservableObject ← [LinkableBase](https://github.com/AnsysVirtualMotion/DAFUL/blob/9110677a5f6a53d7604f8dfd35b4c5fceb59e8e0/DAFUL/Pre/Data/VM.Models.Pre/Models/LinkableBase.cs) ← LinkContainer ← [ContactFunction](VM.Managed.DAFUL.Contact.ContactFunction.md) ← [ContactUserSubroutine](VM.Managed.DAFUL.Contact.ContactUserSubroutine.md)

#### Implements

IObservableObject, IDisposableObject, ILinkable, IObject, ILinkContainer, IOwned, IHasID, IEventProvider, ILinkContainerEvent, IVerifiable, IReservable

#### Inherited Members

[ContactFunction.Initialize(Unit.ConvertFactor)](VM.Managed.DAFUL.Contact.ContactFunction.md#VM_Managed_DAFUL_Contact_ContactFunction_Initialize_VM_Unit_ConvertFactor_), [ContactFunction.WriteTemplate(XmlWriter)](VM.Managed.DAFUL.Contact.ContactFunction.md#VM_Managed_DAFUL_Contact_ContactFunction_WriteTemplate_System_Xml_XmlWriter_), [ContactFunction.ReadTemplate(XmlReader)](VM.Managed.DAFUL.Contact.ContactFunction.md#VM_Managed_DAFUL_Contact_ContactFunction_ReadTemplate_System_Xml_XmlReader_), [ContactFunction.Type](VM.Managed.DAFUL.Contact.ContactFunction.md#VM_Managed_DAFUL_Contact_ContactFunction_Type), [ContactFunction.BufferRangeFactor](VM.Managed.DAFUL.Contact.ContactFunction.md#VM_Managed_DAFUL_Contact_ContactFunction_BufferRangeFactor), [ContactFunction.MaxStepFactor](VM.Managed.DAFUL.Contact.ContactFunction.md#VM_Managed_DAFUL_Contact_ContactFunction_MaxStepFactor), LinkContainer.SetModified(), LinkContainer.raise\_OnUpdating(object, LinkEventArgs), LinkContainer.raise\_OnUpdate(object, LinkEventArgs), LinkContainer.raise\_OnDestroying(object, LinkEventArgs), LinkContainer.raise\_OnDestroy(object, LinkEventArgs), LinkContainer.raise\_OnAdded(object, AddToDocEventArgs), LinkContainer.raise\_OnRemoved(object, RemoveFromDocEventArgs), LinkContainer.GetTargetListForUpdate(), LinkContainer.SkipUpdateObjectImpl(), LinkContainer.Initialize(Unit.ConvertFactor), LinkContainer.SetFlagWhenXMLFile(string, bool), LinkContainer.SetContainer(IOwned, bool), LinkContainer.Container, LinkContainer.Owner, LinkContainer.Document, LinkContainer.ID, LinkContainer.IsChildExternable, LinkContainer.IsExternable, LinkContainer.OnRemoved, LinkContainer.OnAdded, LinkContainer.OnDestroy, LinkContainer.OnDestroying, LinkContainer.OnUpdate, LinkContainer.OnUpdating, ObservableObject.Dispose(), ObservableObject.RaisePropertyChanged(string), ObservableObject.RaisePropertyChanged(string, object, object), 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

### <a id="VM_Managed_DAFUL_Contact_ContactUserSubroutine__ctor"></a> ContactUserSubroutine()

Initializes a new instance of the  class.

```csharp
public ContactUserSubroutine()

```

### <a id="VM_Managed_DAFUL_Contact_ContactUserSubroutine__ctor_VM_Managed_DAFUL_Contact_PropertyContact_"></a> ContactUserSubroutine(PropertyContact)

Initializes a new instance of the  class.

```csharp
public ContactUserSubroutine(PropertyContact objParent)

```

#### Parameters

`objParent` [PropertyContact](VM.Managed.DAFUL.Contact.PropertyContact.md)

Owner contact property.

## Properties

### <a id="VM_Managed_DAFUL_Contact_ContactUserSubroutine_Type"></a> Type

Get function type of itself.

```csharp
public override ContactFunction.FunctionType Type { get; }

```

#### Property Value

[ContactFunction](VM.Managed.DAFUL.Contact.ContactFunction.md).[FunctionType](VM.Managed.DAFUL.Contact.ContactFunction.FunctionType.md)

### <a id="VM_Managed_DAFUL_Contact_ContactUserSubroutine_UserSubroutine"></a> UserSubroutine

Gets or sets the user subroutine.

```csharp
public UserSubroutine UserSubroutine { get; set; }

```

#### Property Value

[UserSubroutine](https://github.com/AnsysVirtualMotion/DAFUL/blob/9110677a5f6a53d7604f8dfd35b4c5fceb59e8e0/DAFUL/ClassicPre/Data/VMDSP/UserSubroutine.cs)

## Methods

### <a id="VM_Managed_DAFUL_Contact_ContactUserSubroutine_ReadTemplate_System_Xml_XmlReader_"></a> ReadTemplate(XmlReader)

Reads the template.

```csharp
public override void ReadTemplate(XmlReader reader)

```

#### Parameters

`reader` XmlReader

The reader.

### <a id="VM_Managed_DAFUL_Contact_ContactUserSubroutine_WriteTemplate_System_Xml_XmlWriter_"></a> WriteTemplate(XmlWriter)

Writes the template.

```csharp
public override void WriteTemplate(XmlWriter writer)

```

#### Parameters

`writer` XmlWriter

The writer.