【问题标题】:How to copy date value from a Windows Forms DateTimePicker control?如何从 Windows 窗体 DateTimePicker 控件中复制日期值?
【发布时间】:2017-05-05 06:37:59
【问题描述】:

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

【问题讨论】:

    标签: c# winforms date datetimepicker


    【解决方案1】:

    根据OP要求

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

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

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

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

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

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

    Clipboard.SetText(theDate);
    

    【讨论】:

    • 我猜他希望用户在控件上复制当前日期值。
    • 我想让用户在运行时将日期复制到缓冲区。
    • 表示在缓冲区上应用 ctrl c ctrl v
    • 只有一年的选择,不是完整的日期值。
    【解决方案2】:

    您需要在表单上使用ContextMenuStrip 控件来执行您想要的操作。

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

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

    最后在 menuitem 的点击事件上,将你的控件值复制到剪贴板。

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

    【讨论】:

    • 我的坏先生,我以为您假设了上下文菜单,请您编辑3以便我可以再次投票
    • @VadimKiselev 很高兴为您提供帮助。
    • 我虽然OP只需要一年
    猜你喜欢
    • 2010-11-11
    • 1970-01-01
    • 2015-02-22
    • 2010-12-02
    • 2020-06-16
    • 2014-03-16
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多