# TextViewGenerator.CaretStateChanged Event

> Occurs when the state of the caret (size, position, visibility) has been changed. The event handler receives an argument of type ServerVisualization.CaretStateEventArgs containing data related to this event.

- **Product:** TX Text Control .NET Server
- **Section:** Reference
- **Kind:** Event
- **Introduced:** 21.0
- **Namespace:** `TXTextControl.ServerVisualisation`
- **Package:** `TXTextControl.TextControl.Core.SDK` (assembly `TXTextControl.Server.Core.dll`, from the private NuGet feed or Text Control Offline Packages)
- **Package:** `TXTextControl.TextControl.ASP.SDK` (assembly `TXTextControl.Server.dll`, from the private NuGet feed or Text Control Offline Packages)
- **.NET Framework:** reference `TXTextControl.Server.dll` from the setup
- **Path:** TX Text Control .NET Server > Reference > TXTextControl.ServerVisualization > TextViewGenerator.CaretStateChanged Event
- **333 words**
- **Web URL:** https://docs.textcontrol.com/tx-text-control-dotnet-server/reference/txtextcontrol-servervisualization/textviewgenerator/caretstatechanged-event/
- **LLMs URL:** https://docs.textcontrol.com/tx-text-control-dotnet-server/reference/txtextcontrol-servervisualization/textviewgenerator/caretstatechanged-event/llms.txt
- **LLMs-Full URL:** https://docs.textcontrol.com/tx-text-control-dotnet-server/reference/txtextcontrol-servervisualization/textviewgenerator/caretstatechanged-event/llms-full.txt

---

### Description

Occurs when the state of the caret (size, position, visibility) has been changed. The event handler receives an argument of type [ServerVisualization.CaretStateEventArgs](https://docs.textcontrol.com/tx-text-control-dotnet-server/reference/txtextcontrol-servervisualization/caretstateeventargs/llms-full.txt) containing data related to this event.

### Syntax

```csharp
public event CaretStateEventHandler CaretStateChanged;
```

```vbnet
Public Event CaretStateChanged As CaretStateEventHandler
```

### Examples

The following example records useful context when caret state changed occurs.

```csharp
textViewGenerator.CaretStateChanged += (sender, e) =>
{
    Console.WriteLine($"Visibility: {e.Visibility}");
};
```

```vbnet
AddHandler textViewGenerator.CaretStateChanged,
    Sub(sender, e)
        Console.WriteLine($"Visibility: {e.Visibility}")
    End Sub
```

---

## Nearby

- **Previous:** [TextViewGenerator.CanUndo Property](https://docs.textcontrol.com/tx-text-control-dotnet-server/reference/txtextcontrol-servervisualization/textviewgenerator/canundo-property/llms-full.txt)
- **Next:** [TextViewGenerator.Changed Event](https://docs.textcontrol.com/tx-text-control-dotnet-server/reference/txtextcontrol-servervisualization/textviewgenerator/changed-event/llms-full.txt)
