我有一个文本框,我根据“\ r”
分解成一个数组我想将点击的文字行放入字符串中。
例如,如果我在文本框中单击下面的第二行,我希望将“第二行”输入到字符串中
第1行
第二行
最后一行
我将如何做到这一点?
答案 0 :(得分:2)
这很接近,但我建议在TextBox.SelectionStart和TextBox.SelectionEnd之间选择文本而不是你想要做的事情。
WPF,但它可能是相同的
<强> MainWindow.xaml 强>
<TextBox
MouseDoubleClick="textBox1_MouseDoubleClick" />
<强> MainWindow.xaml.cs 强>
private void textBox1_MouseDoubleClick(object sender, MouseEventArgs e)
{
int characterIndex = this.textBox1.SelectionStart;
string characterIndexSubstring = this.textBox1.Text.Substring(0, characterIndex);
int lineNumber = characterIndexSubstring.Split(new string[] { "\n", "\r\n" }, StringSplitOptions.RemoveEmptyEntries).Length;
string[] lines = textBox1.Text.Split(new string[] { "\n", "\r\n" }, StringSplitOptions.RemoveEmptyEntries);
string clickedOnValue = lines[lineNumber];
MessageBox.Show(clickedOnValue);
}
答案 1 :(得分:-2)
这不是一个真正的答案,因为我最终从数据网格中抓取了字符串,我正在填充本文中引用的文本框中的数据。
该解决方案的链接是:Silverlight C# - How to get value of row/cell clicked on in DataGrid?