private void FunctionButtonList_ItemSelected(object sender, FunctionViewModel model)
        {
            BlockNavigator.SetFocus(sender as FrameworkElement, DialAreaControl);
            BlockNavigator.EnterNestedNavigator(DialAreaControl);

            if (_formState == FormState.DialAreaMode)
            {
                DialAreaControl.ReplaceSelectedItem(model);
                _hasUnsavedChanges = true;
            }
            else if (_formState == FormState.FunctionButtonsMode)
            {
                _functionsSelection = model;
                _hasUnsavedChanges  = true;
            }
            DialAreaControl.Enable();
        }
        private void DialArea_ItemPicked(FrameworkElement sender, FunctionViewModel obj)
        {
            if (_formState == FormState.DialAreaMode)
            {
                _dialAreaSelection = DialAreaControl.Selection;
                DialAreaControl.Disable();
                BlockNavigator.SetFocus(sender, FunctionButtonList.GetFirstItemElement());
            }

            else if (_formState == FormState.FunctionButtonsMode)
            {
                DialAreaControl.ReplaceSelectedItem(_functionsSelection);
                DialAreaControl.Reset();
                DialAreaControl.Disable();
                BlockNavigator.SetFocus(sender, FunctionButtonList.GetFirstItemElement());
            }
        }