如何只从 Windows 窗体 DateTimePicker 控件获取日期值?

我正在用 C # 代码构建一个应用程序。
如何只从 DateTimePicker控件获取日期值?

371032 次浏览
DateTime dt = this.dateTimePicker1.Value.Date;

我猜你指的是 Winform 应用程序中的日期时间选择器。

在您的代码中,您可以执行以下操作:

string theDate = dateTimePicker1.Value.ToShortDateString();

或者,如果您想指定日期的格式:

string theDate = dateTimePicker1.Value.ToString("yyyy-MM-dd");
string shortDate = dateTimePicker1.Value.ToShortDateString();

你的意思是如何得到没有时间成分的日期? 使用 < a href = “ http://msdn.microsoft.com/en-us/library/system.datetime.Date.aspx”rel = “ nofollow norefrer”> DateTimePicker. Value. Date 但是您需要根据需要格式化输出。

@ Shoban 看起来这个问题被标记为 c # 所以这里是适当的剪辑 Http://msdn.microsoft.com/en-us/library/system.windows.forms.datetimepicker.value.aspx

public MyClass()
{
// Create a new DateTimePicker
DateTimePicker dateTimePicker1 = new DateTimePicker();
Controls.Add(dateTimePicker1);
MessageBox.Show(dateTimePicker1.Value.ToString());


dateTimePicker1.Value = DateTime.Now.AddDays(1);
MessageBox.Show(dateTimePicker1.Value.ToString());
}

我在将日期数据插入数据库时遇到了这个问题,您可以单独使用 struct 成员: 在我的例子中,它很有用,因为 sql 语句需要有正确的值,只需要添加斜杠或破折号来完成格式,不需要转换。

DateTimePicker dtp = new DateTimePicker();
String sql = "insert into table values(" + dtp.Value.Date.Year + "/" +
dtp.Value.Date.Month + "/" + dtp.Value.Date.Day + ");";

这样你就能在没有时间的情况下找到约会对象。

接下来,这个问题已经得到了一个很好的答案,在 WinForms 中,我们也可以设置 自定义格式日期时间选择器 格式属性,正如 Vivek 所说,这允许我们在 日期时间选择器中以指定的格式字符串显示日期/时间,那么,就像我们从 文本框中获取文本一样简单。

// Set the Format type and the CustomFormat string.
dateTimePicker1.Format = DateTimePickerFormat.Custom;
dateTimePicker1.CustomFormat = "yyyy/MM/dd";

dateTimePicker1

我们现在只能通过从 日期时间选择器获取文本来轻松获取 Date:

MessageBox.Show("Selected Date: " + dateTimePicker1.Text, "DateTimePicker", MessageBoxButtons.OK, MessageBoxIcon.Information);

enter image description here

注意: 如果您计划将 Date only 数据插入到 SQL 中的 约会列类型,请参阅与受支持的 约会字符串文字格式相关的 文件。无法在格式字符串 Ydm中插入日期,因为不支持:

dateTimePicker1.CustomFormat = "yyyy/dd/MM";
var qr = "INSERT INTO tbl VALUES (@dtp)";
using (var insertCommand = new SqlCommand..
{
try
{
insertCommand.Parameters.AddWithValue("@dtp", dateTimePicker1.Text);
con.Open();
insertCommand.ExecuteScalar();
}
catch (Exception ex)
{
MessageBox.Show("Exception message: " + ex.Message, "DateTimePicker", MessageBoxButtons.OK, MessageBoxIcon.Error);
}

以上代码以下列异常结束: enter image description here

小心,干杯。

试试这个

var store = dtpDateTimePicker.Value.Date;

存储可以是任何实体对象等。

Datum = DateTime.Parse(DateTimePicker1.Value.ToString("dd/MM/yyyy"))

简单,喜欢

string fecha = dtFecha.Value.ToString("yyyy/MM/dd");