c#发送textbox中输入符号所在的当前行内容
时间: 2024-10-05 18:01:47 浏览: 37
C#中TextBox实现输入提示功能的方法
在 C# 中,如果你想获取 Textbox 中输入符号所在的当前行内容,你可以通过以下几个步骤:
1. 首先,你需要确保你的 TextBox 控件绑定了某个数据绑定源,比如一个 TextBox 的 `Text` 属性可能是来自一个 `TextBox.DataBindings` 或者是从某种控件事件(如 `TextChanged`)触发。
2. 当用户输入符号并引发 `TextChanged` 事件时,可以在事件处理函数中获取当前文本框的内容。
```csharp
private void textBox_TextChanged(object sender, EventArgs e)
{
string currentValue = textBox.Text;
int caretPosition = textBox.SelectionStart; // 获取光标位置
// 判断当前位置是否在新的一行开始
if (caretPosition == 0 || currentValue[caretPosition - 1] != '\n')
{
// 如果不在,计算所在行的内容(假设按Enter分隔行)
int lineIndex = currentValue.Split('\n').Length - 1; // 获取最后一行索引
string lineNumberContent = currentValue.Substring(0, caretPosition).Split('\n')[lineIndex]; // 分割出该行内容
Console.WriteLine($"当前行内容:{lineNumberContent}");
}
}
```
这里我们假设每次按下回车键就换一行。如果用户输入符号的位置不是在行首并且不包含回车,我们就取上一行作为内容。
阅读全文