将数字向下值转换为时间格式

时间:2013-07-25 10:34:37

标签: vb.net

我有一个NumericUpDown1控件 如果我在数字向上控制中选择5,我就像这样调用这个值:

NumericUpDown1.Value

返回值5,如整数而不是5。 我希望以时间格式获得该值 如果我选择5,我应该返回00:05:00 .. 我怎样才能将数字上下转换为时间.. 在我的数据库中,我想将该值存储在数据类型的时间(7)。我尝试过这样的事情:

Dim value As TimeSpan = Convert.ToDecimal(NumericUpDown1.Value)

但这是错误

1 个答案:

答案 0 :(得分:2)

您错误地使用TimeSpan,更好地依赖Date

Dim value As Date = New Date(Now.Year, Now.Month, Now.Day, 0, NumericUpDown1.Value, 0)

您可以将此变量转换为具有所需格式的字符串:

Dim valueAsString As String = value.ToString("HH:mm:ss")

这是使用TimeSpan的正确方法:

Dim value As TimeSpan = New TimeSpan(0, NumericUpDown1.Value, 0)

但我确实推荐上面的Date替代方案。使用TimeSpan仅用于衡量时间间隔(Date类型变量之间)和更好地存储日期/时间相关信息Date,这更容易处理。