private void ControlsToData()
        {
            if (_physicalCharacteristics == null)
                _physicalCharacteristics = new PhysicalCharacteristics();

            _physicalCharacteristics.Mass = DatumMass.DoubleValue.value > 0 ? DatumMass.DoubleValue : null;
            _physicalCharacteristics.Volume = DatumVolume.DoubleValue.value > 0 ? DatumVolume.DoubleValue : null;

            if (_physicalCharacteristics.LinearMeasurements == null)
                _physicalCharacteristics.LinearMeasurements = new PhysicalCharacteristicsLinearMeasurements();

            _physicalCharacteristics.LinearMeasurements = physicalCharLinearControl.PhysicalCharacteristicsLinearMeasurements;
            _physicalCharacteristics.Other = otherListControl.NamedValues;
            if (_physicalCharacteristics.Mass == null
                && _physicalCharacteristics.Volume == null
                && _physicalCharacteristics.LinearMeasurements == null
                && _physicalCharacteristics.Other == null)
            {
                _physicalCharacteristics = null;
            }
        }
 public static bool LoadFromFile(string fileName, out PhysicalCharacteristics obj)
 {
     Exception exception;
     return LoadFromFile(fileName, out obj, out exception);
 }
 /// <summary>
 /// Deserializes xml markup from file into an PhysicalCharacteristics object
 /// </summary>
 /// <param name="fileName">string xml file to load and deserialize</param>
 /// <param name="obj">Output PhysicalCharacteristics object</param>
 /// <param name="exception">output Exception value if deserialize failed</param>
 /// <returns>true if this Serializer can deserialize the object; otherwise, false</returns>
 public static bool LoadFromFile(string fileName, out PhysicalCharacteristics obj, out Exception exception)
 {
     exception = null;
     obj = default(PhysicalCharacteristics);
     try
     {
         obj = LoadFromFile(fileName);
         return true;
     }
     catch (Exception ex)
     {
         exception = ex;
         return false;
     }
 }
 public static bool Deserialize(string input, out PhysicalCharacteristics obj)
 {
     Exception exception;
     return Deserialize(input, out obj, out exception);
 }
 /// <summary>
 /// Deserializes workflow markup into an PhysicalCharacteristics object
 /// </summary>
 /// <param name="input">string workflow markup to deserialize</param>
 /// <param name="obj">Output PhysicalCharacteristics object</param>
 /// <param name="exception">output Exception value if deserialize failed</param>
 /// <returns>true if this Serializer can deserialize the object; otherwise, false</returns>
 public static bool Deserialize(string input, out PhysicalCharacteristics obj, out Exception exception)
 {
     exception = null;
     obj = default(PhysicalCharacteristics);
     try
     {
         obj = Deserialize(input);
         return true;
     }
     catch (Exception ex)
     {
         exception = ex;
         return false;
     }
 }