合并两个日期时间值

时间:2015-10-27 14:23:21

标签: c#

我对编码很新,很抱歉,如果我的问题有明显的答案,但我没有通过搜索找到类似的东西。

我目前正在尝试使用C#中的Windows窗体创建时间跟踪器数据库。

我的oroblem是GUI有两个DateTimePicker:一个显示您可以选择的小时数(dateTimePicker1),另一个显示您可以选择的分钟数(dateTimePicker2)。

它们都是从加载表单的当前时间开始的。

我现在正在尝试将这两者结合起来,这样我就会得到一个字符串,它给我带来所选时间的小时和分钟。

如果有人能在这里帮助我,我会很高兴,因为我目前没有想法......

2 个答案:

答案 0 :(得分:3)

你的意思是这样吗?

// take hour from first datetimepicker
DateTime hour = dateTimePicker1.Value.Hour;
// take minute from second datetimepicker
DateTime minute = dateTimePicker2.Value.Minute;
// combine hour and minute into an object
DateTime hourAndMinute = hour + minute;
// convert the combined DateTime into string
hourAndMinute.ToString("hh:mm");

如果您想将其转换为不同格式的字符串,可以在此处查看http://www.dotnetperls.com/datetime-format

如果您确实需要表示时间长度,请使用此http://www.dotnetperls.com/timespan

如果有帮助,请标记为答案:)

答案 1 :(得分:2)

你在找这个吗?

  // myDatePicker displays date 
  DateTime day = myDatePicker.Value.Date;
  // myTimePicker displays time
  var timeOffset = myTimePicker.Value.TimeOfDay;

  // combined value (day and time)
  DateTime result = day + timeOffset;

如果您有三个 DatePickers(日期,小时和分钟):

  // myDatePicker displays date 
  DateTime day = myDatePicker.Value.Date;

  DateTime result = day
    .AddHours(myHourPicker.Value.Hour)
    .AddMinutes(myMinutePicker.Value.Minute);

要以所需格式显示,请使用格式:

  // Hours and minutes
  String text = result.ToString("hh:mm");