/// <summary>
        /// Initializes a new instance of the <see cref="ConfiguredMeasurementItemData"/> class.
        /// </summary>
        /// <param name="initialize">if set to <c>true</c> [initialize].</param>
        public ConfiguredMeasurementItemData(bool initialize)
        {
            if (initialize)
            {
                var configuredMeasurementItem = new ConfiguredMeasurementItem(true);
                this.Field       = string.Empty;
                this.Value       = configuredMeasurementItem.Value;
                this.MappingMode = configuredMeasurementItem.MappingType.ToString();

                this.MappingModeTypes = new ObservableCollection <string>();
                this.MappingModeTypes.Clear();

                this.DataTypes = new ObservableCollection <string>();
                this.DataTypes.Clear();
            }
        }
        /// <summary>
        /// Processes a property to see whether to add a monitored item.
        /// </summary>
        /// <param name="configuredMeasurementItem">The configured measurement item.</param>
        /// <param name="index">The index.</param>
        /// <param name="fieldType">The field Type.</param>
        /// <param name="monitoredItems">The monitored items.</param>
        private static void ProcessProperty(ConfiguredMeasurementItem configuredMeasurementItem, int index, FieldTypes fieldType, MonitoredItems monitoredItems)
        {
            // Continue only if it is a OPC mapping type.
            if (configuredMeasurementItem.MappingType > 0)
            {
                string serverClass;
                string itemId;

                if (ParseItemDescriptor(configuredMeasurementItem.Value, out serverClass, out itemId))
                {
                    monitoredItems.Add(
                        new MonitoredItemReference(index, fieldType, configuredMeasurementItem.MappingType),
                        serverClass,
                        itemId);
                }
            }
        }
 /// <summary>
 /// Initializes the value. If the value comes from OPC then its initial value is invalid.
 /// </summary>
 /// <param name="item">The item.</param>
 /// <returns>System String.</returns>
 private static string InitializeValue(ConfiguredMeasurementItem item)
 {
     return(IsOpcMappingType(item.MappingType) ? InvalidValue : item.Value);
 }