private bool CheckPropertyDatatype(String value, ACS2.dataType propertyType)
 {
     switch (propertyType) {
         case ACS2.dataType.boolean:
             bool retBVal;
             return Boolean.TryParse(value, out retBVal);
         case ACS2.dataType.@byte:
             byte retByVal;
             return Byte.TryParse(value, out retByVal);
         case ACS2.dataType.@char:
             char retCVal;
             return Char.TryParse(value, out retCVal);
         case ACS2.dataType.@double:
             double retDVal;
             return Double.TryParse(value, System.Globalization.NumberStyles.Number, System.Globalization.CultureInfo.InvariantCulture, out retDVal);
         case ACS2.dataType.integer:
             Int32 retIVal;
             return Int32.TryParse(value, out retIVal);
         case ACS2.dataType.@string:
             return true;
         default:
             return false;
     }
 }
 /// <summary>
 /// Check, if the datatype of the input port and the output port fits to each other
 /// Beside connecting the same datatypes, the following casts are allowed:
 /// byte to integer, byte to double
 /// char to integer, char to double
 /// integer to double
 /// double to integer
 /// </summary>
 /// <param name="outPortType"></param>
 /// <param name="inPortType"></param>
 /// <returns>true, if ports can be connected to each other</returns>
 private bool CheckInteroperabilityOfPorts(ACS2.dataType outPortType, ACS2.dataType inPortType)
 {
     if (outPortType == inPortType) {
         return true;
     }
     else if (outPortType == ACS2.dataType.@byte && inPortType == ACS2.dataType.integer) {
         return true;
     }
     else if (outPortType == ACS2.dataType.@byte && inPortType == ACS2.dataType.@double) {
         return true;
     }
     else if (outPortType == ACS2.dataType.@char && inPortType == ACS2.dataType.integer) {
         return true;
     }
     else if (outPortType == ACS2.dataType.@char && inPortType == ACS2.dataType.@double) {
         return true;
     }
     else if (outPortType == ACS2.dataType.integer && inPortType == ACS2.dataType.@double) {
         return true;
     }
     else if (outPortType == ACS2.dataType.@double && inPortType == ACS2.dataType.integer) {
         return true;
     }
     return false;
 }