c#获取textbox的光标位置
时间: 2024-10-07 20:01:35 浏览: 24
C#实现winform中RichTextBox在指定光标位置插入图片的方法
在 C# 中,要获取 TextBox 控件的光标位置(也称为插入点),你可以使用 `SelectionStart` 属性和 `SelectionLength` 属性。这两个属性组合起来可以提供当前光标所在的位置。以下是一个简单的示例:
```csharp
TextBox textBox = new TextBox(); // 或者从某个已存在的 TextBox 对象
int cursorPosition = textBox.SelectionStart;
```
`SelectionStart` 返回的是插入点的起始索引,而 `SelectionLength` 则表示选区长度(如果光标未移动则为0)。如果你想获取完整的坐标(行和列),你需要结合 `GetLineFromCharIndex` 和 `GetLineText` 方法。
如果你需要实时更新这个值,可以在文本框发生输入事件时获取它,例如使用 `TextChanged` 事件:
```csharp
textBox.TextChanged += (sender, e) => {
int cursorPosition = textBox.SelectionStart;
Console.WriteLine($"Current cursor position: {cursorPosition}");
};
```
阅读全文