    

 ## On this page

  

 

 # Class CheckedLink&lt;T, TUpdate, TDestroy, TOwnerDestroy\\&gt;

 Last update: 16.07.2025 

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

This class is to represent the Link that contains check property.

```csharp
public class CheckedLink<T, TUpdate, TDestroy, TOwnerDestroy> : Link<T, TUpdate, TDestroy, TOwnerDestroy>, ITypedLink<T>, ILink, IChangeReference where TUpdate : struct, ILinkContainerEvent.ILinkEventBuilder where TDestroy : struct, ILinkContainerEvent.ILinkEventBuilder where TOwnerDestroy : struct, ILinkContainerEvent.ILinkEventBuilder

```

#### Type Parameters

`T`

`TUpdate`

`TDestroy`

`TOwnerDestroy`

#### Inheritance

[object](https://learn.microsoft.com/dotnet/api/system.object) ← [Link&lt;T, TUpdate, TDestroy, TOwnerDestroy&gt;](VM.Managed.Link-4.md) ← [CheckedLink&lt;T, TUpdate, TDestroy, TOwnerDestroy&gt;](VM.Managed.CheckedLink-4.md)

#### Implements

[ITypedLink&lt;T&gt;](VM.Managed.ITypedLink-1.md), [ILink](VM.Managed.ILink.md), [IChangeReference](VM.Managed.IChangeReference.md)

#### Inherited Members

[Link&lt;T, TUpdate, TDestroy, TOwnerDestroy&gt;.m\_obj](VM.Managed.Link-4.md#VM_Managed_Link_4_m_obj), [Link&lt;T, TUpdate, TDestroy, TOwnerDestroy&gt;.m\_objLinkOwner](VM.Managed.Link-4.md#VM_Managed_Link_4_m_objLinkOwner), [Link&lt;T, TUpdate, TDestroy, TOwnerDestroy&gt;.UnregisterEvent(bool)](VM.Managed.Link-4.md#VM_Managed_Link_4_UnregisterEvent_System_Boolean_), [Link&lt;T, TUpdate, TDestroy, TOwnerDestroy&gt;.RegisterEvent(bool)](VM.Managed.Link-4.md#VM_Managed_Link_4_RegisterEvent_System_Boolean_), [Link&lt;T, TUpdate, TDestroy, TOwnerDestroy&gt;.GetObjectData(SerializationInfo, StreamingContext)](VM.Managed.Link-4.md#VM_Managed_Link_4_GetObjectData_System_Runtime_Serialization_SerializationInfo_System_Runtime_Serialization_StreamingContext_), [Link&lt;T, TUpdate, TDestroy, TOwnerDestroy&gt;.ClearBeforeDeserialize()](VM.Managed.Link-4.md#VM_Managed_Link_4_ClearBeforeDeserialize), [Link&lt;T, TUpdate, TDestroy, TOwnerDestroy&gt;.ClearBeforeSwap()](VM.Managed.Link-4.md#VM_Managed_Link_4_ClearBeforeSwap), [Link&lt;T, TUpdate, TDestroy, TOwnerDestroy&gt;.Reserve(LinkEventArgs)](VM.Managed.Link-4.md#VM_Managed_Link_4_Reserve_VM_Managed_LinkEventArgs_), [Link&lt;T, TUpdate, TDestroy, TOwnerDestroy&gt;.SetModified()](VM.Managed.Link-4.md#VM_Managed_Link_4_SetModified), [Link&lt;T, TUpdate, TDestroy, TOwnerDestroy&gt;.GetChilds(HashSet&lt;ILinkContainer&gt;)](VM.Managed.Link-4.md#VM_Managed_Link_4_GetChilds_System_Collections_Generic_HashSet_VM_Models_Pre_ILinkContainer__), [Link&lt;T, TUpdate, TDestroy, TOwnerDestroy&gt;.GetFirstDesignEntities()](VM.Managed.Link-4.md#VM_Managed_Link_4_GetFirstDesignEntities), [Link&lt;T, TUpdate, TDestroy, TOwnerDestroy&gt;.DestroyObject(object, LinkEventArgs)](VM.Managed.Link-4.md#VM_Managed_Link_4_DestroyObject_System_Object_VM_Managed_LinkEventArgs_), [Link&lt;T, TUpdate, TDestroy, TOwnerDestroy&gt;.Dispose(bool)](VM.Managed.Link-4.md#VM_Managed_Link_4_Dispose_System_Boolean_), [Link&lt;T, TUpdate, TDestroy, TOwnerDestroy&gt;.Dispose()](VM.Managed.Link-4.md#VM_Managed_Link_4_Dispose), [Link&lt;T, TUpdate, TDestroy, TOwnerDestroy&gt;.LinkedObj](VM.Managed.Link-4.md#VM_Managed_Link_4_LinkedObj), [Link&lt;T, TUpdate, TDestroy, TOwnerDestroy&gt;.FullName](VM.Managed.Link-4.md#VM_Managed_Link_4_FullName), [Link&lt;T, TUpdate, TDestroy, TOwnerDestroy&gt;.Name](VM.Managed.Link-4.md#VM_Managed_Link_4_Name), [Link&lt;T, TUpdate, TDestroy, TOwnerDestroy&gt;.IsReference](VM.Managed.Link-4.md#VM_Managed_Link_4_IsReference), [Link&lt;T, TUpdate, TDestroy, TOwnerDestroy&gt;.Object](VM.Managed.Link-4.md#VM_Managed_Link_4_Object), [Link&lt;T, TUpdate, TDestroy, TOwnerDestroy&gt;.Prototype](VM.Managed.Link-4.md#VM_Managed_Link_4_Prototype)

#### 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

### CheckedLink()

```csharp
protected CheckedLink()

```

### CheckedLink(ILinkContainer)

Initializes a new instance of the  class.

```csharp
public CheckedLink(ILinkContainer objParent)

```

#### Parameters

`objParent` ILinkContainer

The linked object's container object.

### CheckedLink(ILinkContainer, T)

Initializes a new instance of the  class.

```csharp
public CheckedLink(ILinkContainer objParent, T obj)

```

#### Parameters

`objParent` ILinkContainer

The linked object's container object.

`obj` T

The linked object.

### CheckedLink(SerializationInfo, StreamingContext)

```csharp
protected CheckedLink(SerializationInfo info, StreamingContext context)

```

#### Parameters

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

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

## Properties

### Checked

Gets or sets the checked state.

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

```

#### Property Value

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

## Methods

### GetObjectData(SerializationInfo, StreamingContext)

```csharp
protected override void GetObjectData(SerializationInfo info, StreamingContext context)

```

#### Parameters

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

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

### OnResetLink()

```csharp
protected virtual void OnResetLink()

```