/// <summary>
        /// Initializes a new instance of the <see cref="NumberPropertyControl"/> class.
        /// </summary>
        /// <param name="property">The property.</param>
        /// <param name="isConnectable">if set to <c>true</c> [is connectable].</param>
        public NumberPropertyControl(ns.Base.Plugins.Properties.Property property, bool isConnectable)
            : base(property)
        {
            InitializeComponent();
            IsConnectable = isConnectable;
            this.NameLabel.Content = property.Name;
            _property = property;

            if (!string.IsNullOrEmpty(Property.ConnectedToUID)) {
                ConnectClicked(this.ContentGrid as Panel, this.ConnectImage);
            } else {
                if (property is IntegerProperty) {
                    this.NumberBox.Text = ((int)property.Value).ToString();
                } else if (property is DoubleProperty) {
                    this.NumberBox.Text = ((double)property.Value).ToString();
                } else {
                    Trace.WriteLine("Wrong property type " + property.GetType() + " in " + MethodInfo.GetCurrentMethod() + "!", LogCategory.Error);
                }
            }
        }
        /// <summary>
        /// Initializes a new instance of the <see cref="RectanglePropertyControl"/> class.
        /// </summary>
        /// <param name="property">The property.</param>
        /// <param name="isConnectable">if set to <c>true</c> [is connectable].</param>
        public RectanglePropertyControl(ns.Base.Plugins.Properties.Property property, bool isConnectable)
            : base(property)
        {
            InitializeComponent();
            IsConnectable = isConnectable;
            this.NameLabel.Content = property.Name;
            _property = property;
            property.PropertyChanged += Property_PropertyChanged;

            if (!string.IsNullOrEmpty(Property.ConnectedToUID)) {
                ConnectClicked(this.ContentGrid as Panel, this.ConnectImage);
            } else {
                if (property is RectangleProperty) {
                    RectangleProperty rectangleProperty = property as RectangleProperty;
                    this.XNumberBox.Text = rectangleProperty.X.ToString();
                    this.YNumberBox.Text = rectangleProperty.Y.ToString();
                    this.WidthNumberBox.Text = rectangleProperty.Width.ToString();
                    this.HeightNumberBox.Text = rectangleProperty.Height.ToString();

                } else {
                    Trace.WriteLine("Wrong property type " + property.GetType() + " in " + MethodInfo.GetCurrentMethod() + "!", LogCategory.Error);
                }
            }
        }