【问题标题】:How to make more than one label copy to clipboard with a button如何使用按钮将多个标签复制到剪贴板
【发布时间】:2015-08-07 15:18:32
【问题描述】:

我设置了一个名为“copyButton”的按钮。现在我有 7 个不同的标签显示文本。我想知道是否有一种方法可以设置它,这样我就可以一次复制所有标签并将它们过去,这样它们就在一起了。我的标签被命名为 Label1、Label2 等等,直到 Label7。如果它们显示 1 2 3 4 5 6 7,则全部单独显示。单击复制按钮后,它应该可以粘贴为 1234567。我不确定是否可以这样做,我可能只需将它们全部移动到一个文本框或一个标签中。

【问题讨论】:

  • 只有一个方法可以连接所有标签的文本,然后将其添加到剪贴板
  • 我该怎么做?我是 C# 的新手,如果你不能告诉我,我仍然会学到很多东西哈哈:p
  • 以返回字符串的形式创建一个新方法。它看起来像private string ConcatenateLabels() { return Label1.Text + Label2.Text + Label3.Text ...etc }

标签: c# visual-studio-2010 copy copy-paste


【解决方案1】:

你可以这样做。

var textCopy = Labe1.Text + Label2.Text; // upto 7
Clipboard.SetText(textCopy);

如果你想要一个通用的解决方案,你可以这样做.. 这将复制表单内的所有标签文本。 并将其设置为剪贴板。稍后您可以粘贴。

private void button1_Click(object sender, EventArgs e)
        {
            string textToCopy = "";
            foreach (var control in this.Controls) {
                var label =  control as Label;
                if (label !=null) {
                      //by this way will show in assending order
                      textToCopy = label.Text + textToCopy;
                }

            }

            Clipboard.SetText(textToCopy);
        }

【讨论】:

    【解决方案2】:

    试试这个:

    Clipboard.SetText(Label1.Content+ Label2.Content+ Label3.Content+ Label4.Content+ Label5.Content+ Label6.Content+ Label7.Content)
    

    这适用于 WPF,如果您使用的是 Windows 窗体,则将内容替换为文本。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2015-12-19
      • 2016-07-25
      • 2012-01-08
      • 2011-06-21
      • 1970-01-01
      • 2010-09-23
      • 2014-04-30
      相关资源
      最近更新 更多