c# - 如何获取和设置 WPF 文本框的当前光标位置

标签 c# .net wpf

我想从 WPF 文本框获取当前光标位置。如果 TextBox 包含文本 abhishek 并且光标在 abhi 之后闪烁,那么我需要该索引,以便稍后在清除 TextBox 以编程方式并以编程方式分配一些其他或相同的文本我想让光标在 4 个字符后闪烁。

我试过这样获取光标位置,

_tempFuncName = txtFunctionName.Text;
_cursorPosition =  txtFunctionName.SelectionStart;
_selectionLength = txtFunctionName.SelectionLength;

并在以后的某个阶段从类似这样的其他事件中退缩,

txtFunctionName.Text = _tempFuncName;
txtFunctionName.SelectionStart = _cursorPosition;
txtFunctionName.SelectionLength  = _selectionLength;

这里下划线变量是页面级变量。

此代码无效。还有其他方法吗?

最佳答案

您可以使用文本框的 caretindex 属性

//You can set this property on some event
NumberOfDigits.CaretIndex = textbox.Text.Length;

关于c# - 如何获取和设置 WPF 文本框的当前光标位置,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7750505/

相关文章:

C#/WPF : Can I Store more that 1 type in Clipboard?

c# - 使用反射设置嵌套属性值

c# - 使用 GET 执行 WebRequest 时出现 ProtocolViolationException

c# - Wpf DataGrid 重复列

wpf - 如何在 WPF 中制作带有 Button 的 TextBox?

c# - 为什么 HTML 数据在 Response.Redirect() 之后发生转换?

c# - 从 C++、C# 和 Java 的角度来看,Windows 编程是什么?

c# - 具有 2 个或 3 个级别的 MVC URL 路由

c# - 并发集合枚举器

c# - 从两种颜色(从渐变)计算中间色