我无法使用后面的 WPF 代码从 textarea 中提取文本。
示例:伦敦的晴天
如果光标设置在 [d*ay] 上,它应该返回 day。* 为光标。
任何帮助将不胜感激。
这似乎可行,但我不确定当插入符号位于空白中间时您希望它如何表现。照原样,它基本上返回接触插入符号的最近标记。例如,短语“Sunny day in London”有四个标记:“Sunny”、“day”、“in”和“London”。
string selection;
if (txtBox.Text.Length > 0)
{
int startIndex = 0;
for (int i = txtBox.CaretIndex - 1; i >= 0; i--)
{
if (String.IsNullOrWhiteSpace(txtBox.Text[i].ToString()))
{
startIndex = i;
break;
}
}
int length = txtBox.Text.Length - startIndex;
for (int i = startIndex; startIndex + i <= txtBox.Text.Length - 1; i++)
{
if (String.IsNullOrWhiteSpace(txtBox.Text[startIndex + i].ToString()))
{
length = i;
break;
}
}
selection = txtBox.Text.Substring(startIndex, length);
}
else
{
selection = "";
}