我在Multiline文本框中有来自数据库的文本,如何将其复制到剪贴板,以便用户可以将其粘贴到另一个窗口或文件中(例如从我的应用程序粘贴到另一个文本框)?如果可能,或者到记事本/ word文件。
答案 0 :(得分:13)
Clipboard.Clear(); //Clear if any old value is there in Clipboard
Clipboard.SetText("abc"); //Copy text to Clipboard
string strClip = Clipboard.GetText(); //Get text from Clipboard
答案 1 :(得分:2)
使用TextBox
(当然还有Clipboard.SetText()
)将单个或多行Clipboard.GetText()
的文字复制到剪贴板或从剪贴板复制文本没有区别。 TextBox
仍然包含一个String
,无论它是否包含换行符。那只是眼睛糖果。
从限制的角度来看,您的ClipBoard.SetText()
方法也始终只接受一个字符串,其大小仅限于该给定时间的可用内存量。
无需特殊代码即可将此文本手动粘贴到记事本或Word等应用程序中。
Clipboard.SetText(yourTextBox.Text);
就是你所需要的。
答案 2 :(得分:1)
为了在文本中保存行,您应该将“\ n”替换为NewLine字符,例如:
string textforClipboard = TextBox1.Text.Replace("\n", Environment.NewLine);
Clipboard.Clear();
Clipboard.SetText(textforClipboard);
答案 3 :(得分:0)
System.Windows.Forms.Clipboard.SetText(..)
http://msdn.microsoft.com/en-us/library/system.windows.forms.clipboard.settext.aspx