Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/.net/25.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Silverlight C#-如何复制文本框中单击的文本行?_C#_.net_Silverlight_Silverlight 4.0 - Fatal编程技术网

Silverlight C#-如何复制文本框中单击的文本行?

Silverlight C#-如何复制文本框中单击的文本行?,c#,.net,silverlight,silverlight-4.0,C#,.net,Silverlight,Silverlight 4.0,我有一个基于“\r”分解成数组的文本框 我希望将单击的文本行放入字符串中 例如,如果我单击文本框下面的第二行,我希望在字符串中输入“第二行” 第一行 第二行 最后一行 我该怎么做呢?这很接近,但我建议在TextBox.SelectionStart和TextBox.SelectionEnd之间选择文本,而不要选择您要执行的操作 WPF,但可能是相同的 main window.xaml <TextBox MouseDoubleClick="textBox1_MouseDoubleClick

我有一个基于“\r”分解成数组的文本框

我希望将单击的文本行放入字符串中

例如,如果我单击文本框下面的第二行,我希望在字符串中输入“第二行”

第一行
第二行
最后一行


我该怎么做呢?

这很接近,但我建议在TextBox.SelectionStart和TextBox.SelectionEnd之间选择文本,而不要选择您要执行的操作

WPF,但可能是相同的

main window.xaml

<TextBox
  MouseDoubleClick="textBox1_MouseDoubleClick" />

这并不是一个真正的答案,因为我最终从一个数据网格中抓取了字符串,我用本文引用的文本框中的数据填充了这个字符串


该解决方案的链接是:

看起来基本上就是这样,但它总是返回第[0]行,因为其中没有代码来实际收集实际单击的行,因此它默认为0。-1:与您在这个问题中所要求的完全不同。此答案与您的问题完全无关。您为什么不使用Windows新行字符
“\r\n”
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);
}