【发布时间】:2017-02-02 23:51:16
【问题描述】:
如何使 txtTitleofWebpage.Text 在复制到剪贴板时显示为斜体,以便用户可以将引用复制到 Microsoft Word 文档中?我正在尝试使用 C# 制作一个 Windows 表单应用程序,以根据用户输入表单的信息生成哈佛参考。
代码如下:
Clipboard.SetText(wholeName + ", (" + yOPDate + ") " + txtTitleofWebpage.Text +
" [online]. Available from: " + txtURLWeb.Text + " [Accessed: " +
accessDateWeb.Value.ToShortDateString() + "].", TextDataFormat.Rtf);
【问题讨论】:
-
好吧,不是那样的。您需要使用一种可以指定印刷样式并与您要粘贴到的任何应用程序兼容的格式。 HTML 和富文本 (RTF) 是常见的选择。谷歌“c#copy html to clipboard”,点击率最高的都是现有的SO问题。
-
@HansPassant - 所以,我可以将 TextDataFormat 设置为 HTML。不过,我发现如果我在 txtTitleofWebpages.Text 周围添加斜体开始和结束标记,我会收到错误。
-
在开始和结束标签前添加@,这将忽略它们可能被视为的转义字符。喜欢:
@"This \n will not make a newline" -
@EpicKip 所以,像这样......?
Clipboard.SetText(@<body> wholeName + ", (" + yOPDate + ") " + @<i> txtTitleofWebpage.Text @</i> + " [online]. Available from: " + txtURLWeb.Text + " [Accessed: " + accessDateWeb.Value.ToShortDateString() + "]." @</body>, TextDataFormat.Html); -
@HansPassant - 文本将被粘贴到 Word 文档中。
标签: c# winforms clipboard copy-paste clipboarddata