Skip to main content

TimeSpanStringConvertEventArgs.StringValue Property

Gets or sets the string used when converting a TimeSpan value to a string or vice versa.

Namespace: DevExpress.XtraScheduler.Native

Assembly: DevExpress.XtraScheduler.v24.1.Core.Desktop.dll

NuGet Package: DevExpress.Scheduler.CoreDesktop

Declaration

public string StringValue { get; set; }

Property Value

Type Description
String

A String which represents the string value to be converted from or to.

Remarks

The StringValue property value is used when converting a TimeSpan value to a string or vice versa using the HumanReadableTimeSpanHelper.ParseString and HumanReadableTimeSpanHelper.ConvertToString events.

Note that the corresponding TimeSpan value used for conversion can be accessed via the TimeSpanStringConvertEventArgs.TimeSpanValue property.

Example

This example demonstrates how to use the HumanReadableTimeSpanHelper instance to implement the custom conversion of a TimeSpan value to a string and vice versa. To do this handle the HumanReadableTimeSpanHelper.ParseString and HumanReadableTimeSpanHelper.ConvertToString events and use the members of the corresponding TimeSpanStringConvertEventArgs object.

using DevExpress.XtraScheduler.Native;
// ...

// Handle the ParseString and ConvertToString events of the HumanReadableTimeSpanHelper.
HumanReadableTimeSpanHelper.ParseString += new TimeSpanStringConvertEventHandler(OnParse);
HumanReadableTimeSpanHelper.ConvertToString += new TimeSpanStringConvertEventHandler(OnToString);

// Custom parsing of a string to a TimeSpan value.
void OnParse(object sender, TimeSpanStringConvertEventArgs e) {
   double val;
   try {
         string number = e.StringValue.Substring(0, e.StringValue.IndexOf(" milliseconds"));
         val = Convert.ToDouble(number);
   }
   catch {
         val = 0;
   }

   e.TimeSpanValue = TimeSpan.FromMilliseconds(val);
   e.Handled = true;
}

// Custom conversion of a TimeSpan value to a string.
void OnToString(object sender, TimeSpanStringConvertEventArgs e) {
   e.StringValue = e.TimeSpanValue.TotalMilliseconds.ToString() + " milliseconds";
   e.Handled = true;
}
See Also