DateTime.AddMilliseconds Method
[ This article is for Windows Phone 8 developers. If you’re developing for Windows 10, see the latest documentation. ]
Returns a new DateTime that adds the specified number of milliseconds to the value of this instance.
Assembly: mscorlib (in mscorlib.dll)
Parameters
- value
- Type: System.Double
The number of whole and fractional milliseconds to add. This value can be positive or negative, and is rounded to the nearest integer.
Return Value
Type: System.DateTimeAn object whose value is the sum of the date and time represented by this instance and the number of milliseconds represented by value.
| Exception | Condition |
|---|---|
| ArgumentOutOfRangeException | The resulting DateTime is earlier than DateTime.MinValue or later than DateTime.MaxValue. |
This method does not change the value of this DateTime. Instead, a new DateTime is returned whose value is the result of this operation.
The fractional part of value is the fractional part of a millisecond. For example, 4.5 is equivalent to 4 milliseconds and 5000 ticks, where one millisecond = 10000 ticks.
The value parameter is rounded to the nearest integer.
The following example uses the AddMilliseconds method to add one millisecond and 1.5 milliseconds to a DateTime value. It then displays each new value and displays the difference between it and the original value. The difference is displayed both as a time span and as a number of ticks. The example makes it clear that one millisecond equals 10,000 ticks. It also shows that fractional milliseconds are rounded before performing the addition; the DateTime value that results from adding 1.5 milliseconds to the original date is 2 milliseconds greater than the original date.
Dim dateFormat As String = "MM/dd/yyyy hh:mm:ss.fffffff" Dim date1 As Date = #09/08/2010 16:00# outputBlock.Text += String.Format("Original date: {0} ({1:N0} ticks)", _ date1.ToString(dateFormat), date1.Ticks) + Environment.NewLine outputBlock.Text += Environment.NewLine Dim date2 As Date = date1.AddMilliseconds(1) outputBlock.Text += String.Format("Second date: {0} ({1:N0} ticks)", _ date2.ToString(dateFormat), date2.Ticks) + Environment.NewLine outputBlock.Text += String.Format("Difference between dates: {0} ({1:N0} ticks)", _ date2 - date1, date2.Ticks - date1.Ticks) + Environment.NewLine outputBlock.Text += Environment.NewLine Dim date3 As Date = date1.AddMilliseconds(1.5) outputBlock.Text += String.Format("Third date: {0} ({1:N0} ticks)", _ date3.ToString(dateFormat), date3.Ticks) + Environment.NewLine outputBlock.Text += String.Format("Difference between dates: {0} ({1:N0} ticks)", _ date3 - date1, date3.Ticks - date1.Ticks) + Environment.NewLine ' The example displays the following output: ' Original date: 09/08/2010 04:00:00.0000000 (634,195,584,000,000,000 ticks) ' ' Second date: 09/08/2010 04:00:00.0010000 (634,195,584,000,010,000 ticks) ' Difference between dates: 00:00:00.0010000 (10,000 ticks) ' ' Third date: 09/08/2010 04:00:00.0020000 (634,195,584,000,020,000 ticks) ' Difference between dates: 00:00:00.0020000 (20,000 ticks)