    

 ## On this page

  

 

 # Class Object&lt;TEventCore\\&gt;

 Last update: 16.07.2025 

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

This class is to represent the object.

```csharp
public abstract class Object<TEventCore> : ObjectBase, IObservableObject, IDisposableObject, ILinkable, IObjectBase, IObject, ILinkContainer, IOwned, IHasID, IEventProvider, IHasKeyObject, ILinkContainerEvent, IVerifiable, IHistoryObjectSerializable, IAttributeContainer where TEventCore : ObjectEventCore, new()

```

#### Type Parameters

`TEventCore`

#### Inheritance

[object](https://learn.microsoft.com/dotnet/api/system.object) ← ObservableObject ← LinkableBase ← [ObjectBase](VM.Managed.ObjectBase.md) ← [Object&lt;TEventCore&gt;](VM.Managed.Object-1.md)

#### Implements

IObservableObject, IDisposableObject, ILinkable, IObjectBase, IObject, ILinkContainer, IOwned, IHasID, IEventProvider, IHasKeyObject, [ILinkContainerEvent](VM.Managed.ILinkContainerEvent.md), [IVerifiable](VM.Managed.IVerifiable.md), IHistoryObjectSerializable, [IAttributeContainer](VM.Managed.IAttributeContainer.md)

#### Inherited Members

[ObjectBase.ReplaceEventCore(ObjectEventCore)](VM.Managed.ObjectBase.md#VM_Managed_ObjectBase_ReplaceEventCore_VM_Managed_ObjectEventCore_), [ObjectBase.SetModifiedCore(ModifiedResult.ModifiedType)](VM.Managed.ObjectBase.md#VM_Managed_ObjectBase_SetModifiedCore_VM_Managed_ModifiedResult_ModifiedType_), [ObjectBase.AddPostDeserialize(StreamingContext)](VM.Managed.ObjectBase.md#VM_Managed_ObjectBase_AddPostDeserialize_System_Runtime_Serialization_StreamingContext_), [ObjectBase.LinkAddedToDocumentCore(IOwned, bool)](VM.Managed.ObjectBase.md#VM_Managed_ObjectBase_LinkAddedToDocumentCore_VM_Models_Pre_IOwned_System_Boolean_), [ObjectBase.SetModified(ModifiedResult.ModifiedType)](VM.Managed.ObjectBase.md#VM_Managed_ObjectBase_SetModified_VM_Managed_ModifiedResult_ModifiedType_), [ObjectBase.SetModified()](VM.Managed.ObjectBase.md#VM_Managed_ObjectBase_SetModified), [ObjectBase.SetModified(ModifiedResult.ModifiedType, IDocument)](VM.Managed.ObjectBase.md#VM_Managed_ObjectBase_SetModified_VM_Managed_ModifiedResult_ModifiedType_VM_Models_Pre_IDocument_), [ObjectBase.DestroyObject(object, LinkEventArgs)](VM.Managed.ObjectBase.md#VM_Managed_ObjectBase_DestroyObject_System_Object_VM_Managed_LinkEventArgs_), [ObjectBase.DestroyObject(DestroyEventArgs)](VM.Managed.ObjectBase.md#VM_Managed_ObjectBase_DestroyObject_VM_Managed_DestroyEventArgs_), [ObjectBase.DestroyObject()](VM.Managed.ObjectBase.md#VM_Managed_ObjectBase_DestroyObject), [ObjectBase.Initialize(Unit.ConvertFactor)](VM.Managed.ObjectBase.md#VM_Managed_ObjectBase_Initialize_VM_Unit_ConvertFactor_), [ObjectBase.FixUp(ObjectBase)](VM.Managed.ObjectBase.md#VM_Managed_ObjectBase_FixUp_VM_Managed_ObjectBase_), [ObjectBase.DoWorkAfterUpdateContents()](VM.Managed.ObjectBase.md#VM_Managed_ObjectBase_DoWorkAfterUpdateContents), [ObjectBase.SetOldNameWithNewEntity(ObjectBase, ObjectBase)](VM.Managed.ObjectBase.md#VM_Managed_ObjectBase_SetOldNameWithNewEntity_VM_Managed_ObjectBase_VM_Managed_ObjectBase_), [ObjectBase.SetIconColor(Canvas)](VM.Managed.ObjectBase.md#VM_Managed_ObjectBase_SetIconColor_VM_CAD_Kernel_Render_Canvas_), [ObjectBase.RemoveFromCreatedList()](VM.Managed.ObjectBase.md#VM_Managed_ObjectBase_RemoveFromCreatedList), [ObjectBase.PostAddToDocument()](VM.Managed.ObjectBase.md#VM_Managed_ObjectBase_PostAddToDocument), [ObjectBase.PostRemoveFromDocument(Document)](VM.Managed.ObjectBase.md#VM_Managed_ObjectBase_PostRemoveFromDocument_VM_Managed_Document_), [ObjectBase.GetArgumentList(LinkedList&lt;ObjectBase&gt;)](VM.Managed.ObjectBase.md#VM_Managed_ObjectBase_GetArgumentList_System_Collections_Generic_LinkedList_VM_Managed_ObjectBase__), [ObjectBase.ResetInvalidEntity()](VM.Managed.ObjectBase.md#VM_Managed_ObjectBase_ResetInvalidEntity), [ObjectBase.OnDeserialization(object)](VM.Managed.ObjectBase.md#VM_Managed_ObjectBase_OnDeserialization_System_Object_), [ObjectBase.IsSerializableEvent(Delegate)](VM.Managed.ObjectBase.md#VM_Managed_ObjectBase_IsSerializableEvent_System_Delegate_), [ObjectBase.CustomGetObjectData(SerializationInfo, StreamingContext)](VM.Managed.ObjectBase.md#VM_Managed_ObjectBase_CustomGetObjectData_System_Runtime_Serialization_SerializationInfo_System_Runtime_Serialization_StreamingContext_), [ObjectBase.CheckAndUpdateLink(HashSet&lt;ObjectBase&gt;)](VM.Managed.ObjectBase.md#VM_Managed_ObjectBase_CheckAndUpdateLink_System_Collections_Generic_HashSet_VM_Managed_ObjectBase__), [ObjectBase.Verify(VerifiedResult)](VM.Managed.ObjectBase.md#VM_Managed_ObjectBase_Verify_VM_Managed_VerifiedResult_), [ObjectBase.ConnectProxy()](VM.Managed.ObjectBase.md#VM_Managed_ObjectBase_ConnectProxy), [ObjectBase.RollbackEvent()](VM.Managed.ObjectBase.md#VM_Managed_ObjectBase_RollbackEvent), [ObjectBase.LinkRequestUpdating(object, LinkEventArgs)](VM.Managed.ObjectBase.md#VM_Managed_ObjectBase_LinkRequestUpdating_System_Object_VM_Managed_LinkEventArgs_), [ObjectBase.LinkRequestUpdate(object, LinkEventArgs)](VM.Managed.ObjectBase.md#VM_Managed_ObjectBase_LinkRequestUpdate_System_Object_VM_Managed_LinkEventArgs_), [ObjectBase.LinkRequestDestroying(object, LinkEventArgs)](VM.Managed.ObjectBase.md#VM_Managed_ObjectBase_LinkRequestDestroying_System_Object_VM_Managed_LinkEventArgs_), [ObjectBase.LinkRequestDestroy(object, LinkEventArgs)](VM.Managed.ObjectBase.md#VM_Managed_ObjectBase_LinkRequestDestroy_System_Object_VM_Managed_LinkEventArgs_), [ObjectBase.LinkAddedToDocument(object, AddToDocEventArgs)](VM.Managed.ObjectBase.md#VM_Managed_ObjectBase_LinkAddedToDocument_System_Object_VM_Managed_AddToDocEventArgs_), [ObjectBase.LinkRemovedFromDocument(object, RemoveFromDocEventArgs)](VM.Managed.ObjectBase.md#VM_Managed_ObjectBase_LinkRemovedFromDocument_System_Object_VM_Managed_RemoveFromDocEventArgs_), [ObjectBase.DisposeManagedResources()](VM.Managed.ObjectBase.md#VM_Managed_ObjectBase_DisposeManagedResources), [ObjectBase.GetDestroyEventExtraData()](VM.Managed.ObjectBase.md#VM_Managed_ObjectBase_GetDestroyEventExtraData), [ObjectBase.OnLinkReserved(ILink, object, EventArgs)](VM.Managed.ObjectBase.md#VM_Managed_ObjectBase_OnLinkReserved_VM_Managed_ILink_System_Object_System_EventArgs_), [ObjectBase.CreateEntityWhenUpdateContents(Action)](VM.Managed.ObjectBase.md#VM_Managed_ObjectBase_CreateEntityWhenUpdateContents_System_Action_), [ObjectBase.GetObjectByKey(UIntPtr)](VM.Managed.ObjectBase.md#VM_Managed_ObjectBase_GetObjectByKey_System_UIntPtr_), [ObjectBase.FindObjectOnXmlDeserialize(string)](VM.Managed.ObjectBase.md#VM_Managed_ObjectBase_FindObjectOnXmlDeserialize_System_String_), [ObjectBase.UpdateContents(XmlReader, ObjectBase, string)](VM.Managed.ObjectBase.md#VM_Managed_ObjectBase_UpdateContents_System_Xml_XmlReader_VM_Managed_ObjectBase_System_String_), [ObjectBase.UpdateContents(XmlReader, ObjectBase)](VM.Managed.ObjectBase.md#VM_Managed_ObjectBase_UpdateContents_System_Xml_XmlReader_VM_Managed_ObjectBase_), [ObjectBase.UpdateContents(string, string)](VM.Managed.ObjectBase.md#VM_Managed_ObjectBase_UpdateContents_System_String_System_String_), [ObjectBase.UpdateContents(string)](VM.Managed.ObjectBase.md#VM_Managed_ObjectBase_UpdateContents_System_String_), [ObjectBase.SetFlagWhenXMLFile(string, bool)](VM.Managed.ObjectBase.md#VM_Managed_ObjectBase_SetFlagWhenXMLFile_System_String_System_Boolean_), [ObjectBase.IsEqualArray&lt;T&gt;(T\[\], T\[\])](VM.Managed.ObjectBase.md#VM_Managed_ObjectBase_IsEqualArray__1___0_____0___), [ObjectBase.IsEqualList(List&lt;double&gt;, List&lt;double&gt;)](VM.Managed.ObjectBase.md#VM_Managed_ObjectBase_IsEqualList_System_Collections_Generic_List_System_Double__System_Collections_Generic_List_System_Double__), [ObjectBase.SetContainer(IOwned, bool)](VM.Managed.ObjectBase.md#VM_Managed_ObjectBase_SetContainer_VM_Models_Pre_IOwned_System_Boolean_), [ObjectBase.GetTargetListForUpdate()](VM.Managed.ObjectBase.md#VM_Managed_ObjectBase_GetTargetListForUpdate), [ObjectBase.SkipUpdateObjectImpl()](VM.Managed.ObjectBase.md#VM_Managed_ObjectBase_SkipUpdateObjectImpl), [ObjectBase.raise\_OnUpdating(object, LinkEventArgs)](VM.Managed.ObjectBase.md#VM_Managed_ObjectBase_raise_OnUpdating_System_Object_VM_Managed_LinkEventArgs_), [ObjectBase.raise\_OnUpdate(object, LinkEventArgs)](VM.Managed.ObjectBase.md#VM_Managed_ObjectBase_raise_OnUpdate_System_Object_VM_Managed_LinkEventArgs_), [ObjectBase.raise\_OnDestroying(object, LinkEventArgs)](VM.Managed.ObjectBase.md#VM_Managed_ObjectBase_raise_OnDestroying_System_Object_VM_Managed_LinkEventArgs_), [ObjectBase.raise\_OnDestroy(object, LinkEventArgs)](VM.Managed.ObjectBase.md#VM_Managed_ObjectBase_raise_OnDestroy_System_Object_VM_Managed_LinkEventArgs_), [ObjectBase.raise\_Destroying(object, Identifier)](VM.Managed.ObjectBase.md#VM_Managed_ObjectBase_raise_Destroying_System_Object_VM_Identifier_), [ObjectBase.raise\_OnAdded(object, AddToDocEventArgs)](VM.Managed.ObjectBase.md#VM_Managed_ObjectBase_raise_OnAdded_System_Object_VM_Managed_AddToDocEventArgs_), [ObjectBase.raise\_OnRemoved(object, RemoveFromDocEventArgs)](VM.Managed.ObjectBase.md#VM_Managed_ObjectBase_raise_OnRemoved_System_Object_VM_Managed_RemoveFromDocEventArgs_), [ObjectBase.raise\_OnContentsUpdated(object, EventArgs)](VM.Managed.ObjectBase.md#VM_Managed_ObjectBase_raise_OnContentsUpdated_System_Object_System_EventArgs_), [ObjectBase.Dispose(bool)](VM.Managed.ObjectBase.md#VM_Managed_ObjectBase_Dispose_System_Boolean_), [ObjectBase.SkipModified](VM.Managed.ObjectBase.md#VM_Managed_ObjectBase_SkipModified), [ObjectBase.ClearChildInfoBeforeDeserialize](VM.Managed.ObjectBase.md#VM_Managed_ObjectBase_ClearChildInfoBeforeDeserialize), [ObjectBase.KeyImpl](VM.Managed.ObjectBase.md#VM_Managed_ObjectBase_KeyImpl), [ObjectBase.ID](VM.Managed.ObjectBase.md#VM_Managed_ObjectBase_ID), [ObjectBase.TopologyEntityTypeName](VM.Managed.ObjectBase.md#VM_Managed_ObjectBase_TopologyEntityTypeName), [ObjectBase.ObjectStateForCircularError](VM.Managed.ObjectBase.md#VM_Managed_ObjectBase_ObjectStateForCircularError), [ObjectBase.ObjectState](VM.Managed.ObjectBase.md#VM_Managed_ObjectBase_ObjectState), [ObjectBase.IsChildExternable](VM.Managed.ObjectBase.md#VM_Managed_ObjectBase_IsChildExternable), [ObjectBase.IsExternable](VM.Managed.ObjectBase.md#VM_Managed_ObjectBase_IsExternable), [ObjectBase.Container](VM.Managed.ObjectBase.md#VM_Managed_ObjectBase_Container), [ObjectBase.Owner](VM.Managed.ObjectBase.md#VM_Managed_ObjectBase_Owner), [ObjectBase.Document](VM.Managed.ObjectBase.md#VM_Managed_ObjectBase_Document), [ObjectBase.UntypedEventCore](VM.Managed.ObjectBase.md#VM_Managed_ObjectBase_UntypedEventCore), [ObjectBase.KernelKey](VM.Managed.ObjectBase.md#VM_Managed_ObjectBase_KernelKey), [ObjectBase.Key](VM.Managed.ObjectBase.md#VM_Managed_ObjectBase_Key), [ObjectBase.OnContentsUpdated](VM.Managed.ObjectBase.md#VM_Managed_ObjectBase_OnContentsUpdated), [ObjectBase.OnRemoved](VM.Managed.ObjectBase.md#VM_Managed_ObjectBase_OnRemoved), [ObjectBase.OnAdded](VM.Managed.ObjectBase.md#VM_Managed_ObjectBase_OnAdded), [ObjectBase.Destroying](VM.Managed.ObjectBase.md#VM_Managed_ObjectBase_Destroying), [ObjectBase.OnDestroy](VM.Managed.ObjectBase.md#VM_Managed_ObjectBase_OnDestroy), [ObjectBase.OnDestroying](VM.Managed.ObjectBase.md#VM_Managed_ObjectBase_OnDestroying), [ObjectBase.OnUpdate](VM.Managed.ObjectBase.md#VM_Managed_ObjectBase_OnUpdate), [ObjectBase.OnUpdating](VM.Managed.ObjectBase.md#VM_Managed_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

### Object(SerializationInfo, StreamingContext)

Initializes a new instance of the  class.

```csharp
protected Object(SerializationInfo info, StreamingContext __unnamed001)

```

#### Parameters

`info` [SerializationInfo](https://learn.microsoft.com/dotnet/api/system.runtime.serialization.serializationinfo)

The info.

`__unnamed001` [StreamingContext](https://learn.microsoft.com/dotnet/api/system.runtime.serialization.streamingcontext)

### Object()

Initializes a new instance of the  class.

```csharp
public Object()

```

### Object(string, string)

Initializes a new instance of the  class.

```csharp
protected Object(string strProxyName, string strBuildInfo)

```

#### Parameters

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

Name of the proxy.

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

The build information.

### Object(string, string, bool)

Initializes a new instance of the  class.

```csharp
protected Object(string strProxyName, string strBuildInfo, bool IsBuilding)

```

#### Parameters

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

Name of the proxy.

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

The build information.

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

whether or not building.

## Properties

### Attributes

Gets or sets the Attribute to collection.

```csharp
public AttributeCollection Attributes { get; set; }

```

#### Property Value

[AttributeCollection](VM.Managed.AttributeCollection.md)

### EventCore

Gets the eventcore.

```csharp
public TEventCore EventCore { get; }

```

#### Property Value

TEventCore

### Key

Sets the convert key.

```csharp
public override sealed ObjectBase.ConvertKey Key { set; }

```

#### Property Value

[ObjectBase](VM.Managed.ObjectBase.md).[ConvertKey](VM.Managed.ObjectBase.ConvertKey.md)

### UntypedEventCore

Gets the untyped eventcore.

```csharp
public override sealed ObjectEventCore UntypedEventCore { get; }

```

#### Property Value

[ObjectEventCore](VM.Managed.ObjectEventCore.md)

## Methods

### CustomGetObjectData(SerializationInfo, StreamingContext)

Customize the GetObjectData function.

```csharp
protected override void CustomGetObjectData(SerializationInfo info, StreamingContext __unnamed001)

```

#### Parameters

`info` [SerializationInfo](https://learn.microsoft.com/dotnet/api/system.runtime.serialization.serializationinfo)

The info.

`__unnamed001` [StreamingContext](https://learn.microsoft.com/dotnet/api/system.runtime.serialization.streamingcontext)

### GetKey()

Gets the key.

```csharp
public UIntPtr GetKey()

```

#### Returns

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

### Initialize(ConvertFactor)

Initializes member through unit convert factor.

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

```

#### Parameters

`factor` Unit.ConvertFactor

The unit convert factor.

### OnDeserialization(object)

Called when \[deserialization\].

```csharp
protected override void OnDeserialization(object sender)

```

#### Parameters

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

The sender.

### OnDeserializedCore(object)

```csharp
public void OnDeserializedCore(object eventCore)

```

#### Parameters

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

### RollbackEvent()

```csharp
protected override void RollbackEvent()

```

### SetIconColor(Canvas)

Set color for icon.

```csharp
public override void SetIconColor(Canvas canvas)

```

#### Parameters

`canvas` Canvas

The canvas.