# TableOfContentsCollection.SyncRoot Property

> Gets an object that can be used to synchronize access to the collection.

- **Product:** TX Text Control .NET Server
- **Section:** Reference
- **Kind:** Property
- **Introduced:** 29.0
- **Namespace:** `TXTextControl`
- **Package:** `TXTextControl.TextControl.Core.SDK` (assembly `TXTextControl.Core.dll`, from the private NuGet feed or Text Control Offline Packages)
- **Package:** `TXTextControl.TextControl.ASP.SDK` (assembly `TXTextControl.dll`, from the private NuGet feed or Text Control Offline Packages)
- **.NET Framework:** reference `TXTextControl.dll` from the setup
- **Explicit:** implements `System.Collections.ICollection` explicitly; cast to the interface to use it
- **Path:** TX Text Control .NET Server > Reference > TXTextControl > TableOfContentsCollection.SyncRoot Property
- **626 words**
- **Web URL:** https://docs.textcontrol.com/tx-text-control-dotnet-server/reference/txtextcontrol/tableofcontentscollection/syncroot-property/
- **LLMs URL:** https://docs.textcontrol.com/tx-text-control-dotnet-server/reference/txtextcontrol/tableofcontentscollection/syncroot-property/llms.txt
- **LLMs-Full URL:** https://docs.textcontrol.com/tx-text-control-dotnet-server/reference/txtextcontrol/tableofcontentscollection/syncroot-property/llms-full.txt

---

### Description

Gets an object that can be used to synchronize access to the collection.

### Syntax

The type implements this member of System.Collections.ICollection explicitly: code reaches it by casting to the interface, as in ((ICollection)value).SyncRoot.

```csharp
object ICollection.SyncRoot { get; }
```

```vbnet
Private ReadOnly Property SyncRoot As Object Implements ICollection.SyncRoot
```

### Examples

The following example works with tables of contents in the current document by using `TableOfContentsCollection.syncroot`.

```csharp
textControl.Text = "Customer: Contoso Ltd.";
textControl.Select(10, 12);
TableOfContentsCollection tableOfContentsCollection = textControl.TablesOfContents;
tableOfContentsCollection.Add(new TableOfContents(1, 3) { Name = "Contents", ID = 100 });

ICollection collection = tableOfContentsCollection;
var value = collection.SyncRoot;
```

```vbnet
textControl.Text = "Customer: Contoso Ltd."
textControl.Select(10, 12)
Dim tableOfContentsCollection As TableOfContentsCollection = textControl.TablesOfContents
tableOfContentsCollection.Add(New TableOfContents(1, 3) With { .Name = "Contents", .ID = 100 })

Dim collection As ICollection = tableOfContentsCollection
Dim value = collection.SyncRoot
```

### Limitations

Read only.

---

## Nearby

- **Previous:** [TableOfContentsCollection.Remove Method](https://docs.textcontrol.com/tx-text-control-dotnet-server/reference/txtextcontrol/tableofcontentscollection/remove-method/llms-full.txt)
- **Next:** [TableOfContentsEventArgs Class](https://docs.textcontrol.com/tx-text-control-dotnet-server/reference/txtextcontrol/tableofcontentseventargs/llms-full.txt)
