    

 ## On this page

  

 

 # Class LinkLinkedList&lt;T, TLink\\&gt;

 Last update: 09.03.2026 

<a id="VM_Managed_Collections_LinkLinkedList_2"></a>

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

```csharp
public sealed class LinkLinkedList<T, TLink> : LinkCollection<T, TLink, LinkedList<TLink>>, ILinkCollection, IPostDeserialized where T : class where TLink : class, ITypedLink<T>

```

#### Type Parameters

`T`

`TLink`

#### Inheritance

object ← [LinkCollection&lt;T, TLink, LinkedList&lt;TLink&gt;&gt;](VM.Managed.Collections.LinkCollection-3.md) ← [LinkLinkedList&lt;T, TLink&gt;](VM.Managed.Collections.LinkLinkedList-2.md)

#### Implements

[ILinkCollection](VM.Managed.Collections.ILinkCollection.md), IPostDeserialized

#### Inherited Members

[LinkCollection&lt;T, TLink, LinkedList&lt;TLink&gt;&gt;.raise\_CollectionChanged(object, NotifyCollectionChangedEventArgs)](VM.Managed.Collections.LinkCollection-3.md#VM_Managed_Collections_LinkCollection_3_raise_CollectionChanged_System_Object_System_Collections_Specialized_NotifyCollectionChangedEventArgs_), [LinkCollection&lt;T, TLink, LinkedList&lt;TLink&gt;&gt;.Add(T)](VM.Managed.Collections.LinkCollection-3.md#VM_Managed_Collections_LinkCollection_3_Add__0_), [LinkCollection&lt;T, TLink, LinkedList&lt;TLink&gt;&gt;.Add(T, bool)](VM.Managed.Collections.LinkCollection-3.md#VM_Managed_Collections_LinkCollection_3_Add__0_System_Boolean_), [LinkCollection&lt;T, TLink, LinkedList&lt;TLink&gt;&gt;.Clear()](VM.Managed.Collections.LinkCollection-3.md#VM_Managed_Collections_LinkCollection_3_Clear), [LinkCollection&lt;T, TLink, LinkedList&lt;TLink&gt;&gt;.Clear(bool)](VM.Managed.Collections.LinkCollection-3.md#VM_Managed_Collections_LinkCollection_3_Clear_System_Boolean_), [LinkCollection&lt;T, TLink, LinkedList&lt;TLink&gt;&gt;.Contains(T)](VM.Managed.Collections.LinkCollection-3.md#VM_Managed_Collections_LinkCollection_3_Contains__0_), [LinkCollection&lt;T, TLink, LinkedList&lt;TLink&gt;&gt;.CopyTo(T\[\], int)](VM.Managed.Collections.LinkCollection-3.md#VM_Managed_Collections_LinkCollection_3_CopyTo__0___System_Int32_), [LinkCollection&lt;T, TLink, LinkedList&lt;TLink&gt;&gt;.GetEnumeratorImpl()](VM.Managed.Collections.LinkCollection-3.md#VM_Managed_Collections_LinkCollection_3_GetEnumeratorImpl), [LinkCollection&lt;T, TLink, LinkedList&lt;TLink&gt;&gt;.GetEnumerator()](VM.Managed.Collections.LinkCollection-3.md#VM_Managed_Collections_LinkCollection_3_GetEnumerator), [LinkCollection&lt;T, TLink, LinkedList&lt;TLink&gt;&gt;.Remove(T)](VM.Managed.Collections.LinkCollection-3.md#VM_Managed_Collections_LinkCollection_3_Remove__0_), [LinkCollection&lt;T, TLink, LinkedList&lt;TLink&gt;&gt;.Remove(T, bool)](VM.Managed.Collections.LinkCollection-3.md#VM_Managed_Collections_LinkCollection_3_Remove__0_System_Boolean_), [LinkCollection&lt;T, TLink, LinkedList&lt;TLink&gt;&gt;.SetModified(ModifiedType, bool)](VM.Managed.Collections.LinkCollection-3.md#VM_Managed_Collections_LinkCollection_3_SetModified_VM_Managed_Collections_ModifiedType_System_Boolean_), [LinkCollection&lt;T, TLink, LinkedList&lt;TLink&gt;&gt;.IsReadOnly](VM.Managed.Collections.LinkCollection-3.md#VM_Managed_Collections_LinkCollection_3_IsReadOnly), [LinkCollection&lt;T, TLink, LinkedList&lt;TLink&gt;&gt;.Count](VM.Managed.Collections.LinkCollection-3.md#VM_Managed_Collections_LinkCollection_3_Count), [LinkCollection&lt;T, TLink, LinkedList&lt;TLink&gt;&gt;.CollectionChanged](VM.Managed.Collections.LinkCollection-3.md#VM_Managed_Collections_LinkCollection_3_CollectionChanged)

#### 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_Collections_LinkLinkedList_2__ctor_VM_Models_Pre_ILinkContainer_"></a> LinkLinkedList(ILinkContainer)

```csharp
public LinkLinkedList(ILinkContainer objParent)

```

#### Parameters

`objParent` ILinkContainer

### <a id="VM_Managed_Collections_LinkLinkedList_2__ctor_VM_Models_Pre_ILinkContainer_System_Collections_Generic_LinkedList__1__"></a> LinkLinkedList(ILinkContainer, LinkedList&lt;TLink&gt;)

```csharp
public LinkLinkedList(ILinkContainer objParent, LinkedList<TLink> collection)

```

#### Parameters

`objParent` ILinkContainer

`collection` LinkedList&lt;TLink&gt;

## Properties

### <a id="VM_Managed_Collections_LinkLinkedList_2_First"></a> First

```csharp
public LinkedListNode<TLink> First { get; }

```

#### Property Value

LinkedListNode&lt;TLink&gt;

### <a id="VM_Managed_Collections_LinkLinkedList_2_Last"></a> Last

```csharp
public LinkedListNode<TLink> Last { get; }

```

#### Property Value

LinkedListNode&lt;TLink&gt;

### <a id="VM_Managed_Collections_LinkLinkedList_2_UseSearchCache"></a> UseSearchCache

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

```

#### Property Value

bool

## Methods

### <a id="VM_Managed_Collections_LinkLinkedList_2_Add__0_"></a> Add(T)

```csharp
public override sealed void Add(T item)

```

#### Parameters

`item` T

### <a id="VM_Managed_Collections_LinkLinkedList_2_Add__0_System_Boolean_"></a> Add(T, bool)

```csharp
public override sealed void Add(T item, bool bContainsDocument)

```

#### Parameters

`item` T

`bContainsDocument` bool

### <a id="VM_Managed_Collections_LinkLinkedList_2_AddAfter__0__0_"></a> AddAfter(T, T)

```csharp
public LinkedListNode<TLink> AddAfter(T item, T newItem)

```

#### Parameters

`item` T

`newItem` T

#### Returns

LinkedListNode&lt;TLink&gt;

### <a id="VM_Managed_Collections_LinkLinkedList_2_AddBefore__0__0_"></a> AddBefore(T, T)

```csharp
public LinkedListNode<TLink> AddBefore(T item, T newItem)

```

#### Parameters

`item` T

`newItem` T

#### Returns

LinkedListNode&lt;TLink&gt;

### <a id="VM_Managed_Collections_LinkLinkedList_2_AddFirst__0_"></a> AddFirst(T)

```csharp
public LinkedListNode<TLink> AddFirst(T item)

```

#### Parameters

`item` T

#### Returns

LinkedListNode&lt;TLink&gt;

### <a id="VM_Managed_Collections_LinkLinkedList_2_AddLast__0_"></a> AddLast(T)

```csharp
public LinkedListNode<TLink> AddLast(T item)

```

#### Parameters

`item` T

#### Returns

LinkedListNode&lt;TLink&gt;

### <a id="VM_Managed_Collections_LinkLinkedList_2_Clear"></a> Clear()

```csharp
public override sealed void Clear()

```

### <a id="VM_Managed_Collections_LinkLinkedList_2_Clear_System_Boolean_"></a> Clear(bool)

```csharp
public override sealed void Clear(bool bContainsDocument)

```

#### Parameters

`bContainsDocument` bool

### <a id="VM_Managed_Collections_LinkLinkedList_2_Contains__0_"></a> Contains(T)

```csharp
public override sealed bool Contains(T item)

```

#### Parameters

`item` T

#### Returns

bool

### <a id="VM_Managed_Collections_LinkLinkedList_2_Remove__0_"></a> Remove(T)

```csharp
public override sealed bool Remove(T item)

```

#### Parameters

`item` T

#### Returns

bool

### <a id="VM_Managed_Collections_LinkLinkedList_2_Remove__0_System_Boolean_"></a> Remove(T, bool)

```csharp
public override sealed bool Remove(T item, bool bContainsDocument)

```

#### Parameters

`item` T

`bContainsDocument` bool

#### Returns

bool