如何从 Windows Forms DateTimePicker 控件复制日期值?

How to copy date value from a Windows Forms DateTimePicker control?

我正在使用 C# 代码构建应用程序。 我想让我的程序的用户能够将数据值从 Windows Forms DateTimePicker 控件复制到缓冲区。我该怎么做?

根据 OP 请求

将这些代码放在加载事件中

dateTimePicker1.Format = DateTimePickerFormat.Custom;
dateTimePicker1.CustomFormat = "yyyy";
dateTimePicker1.ShowUpDown = true; 

在您的代码中,您可以在按钮单击事件上执行以下操作:

string theDate = dateTimePicker1.Value.ToString("yyyy");

将此字符串设置为任何你想要的文本

或者如果你想要剪贴板操作

Clipboard.SetText(theDate);

您的表单需要 ContextMenuStrip 控件才能执行您想要的操作。

  • 在您的窗体上添加一个 ContextMenuStrip 控件,并像这样设置它的菜单项。将 DateTimePicker 控件的 ContextMenuStrip 设置为您刚刚创建的 ContextMenuStrip。您可以定义菜单项的快捷方式。这里我设置为 ctrl + C.

将其快捷方式设置为 ctrl + C 或您希望从用户将单击它的菜单项的属性中设置的任何内容。

最后在菜单项的单击事件上,将您的控件值复制到剪贴板。

 private void copyToolStripMenuItem_Click(object sender, EventArgs e)
    {
        var copiedDate = dateTimePicker.Value.ToString("yyyy-MM-dd");
        Clipboard.SetText(copiedDate);
    }