/// <summary>
        /// Constructor
        /// </summary>
        public ChainInputPanelControl()
        {
            InitializeComponent();

            ComboSymbolActions.ItemsSource    = SymbolActions;
            SymbolInputsContainer.ItemsSource = InputControls;

            CommandService.Events.Subscribe((message) =>
            {
                if (Equals(message.Entity, EntityEnum.Chain))
                {
                    var inputControl = message.Content as ChainInputControl;

                    switch (message.Action)
                    {
                    case ActionEnum.Create:

                        InputControls.Add(new ChainInputControl {
                            Margin = new Thickness(0, 0, 0, 15)
                        });
                        break;

                    case ActionEnum.Delete:

                        if (InputControls.Count > 1)
                        {
                            InputControls.Remove(inputControl);
                        }

                        break;
                    }
                }
            });
        }