public void Show(double duration = 0)
        {
            TrasitionMargin(Border.Margin, new Thickness(0), Border.Name);
            _isHidden = false;

            TopLevelContent.IsEnabled = true;
            if (duration > 0)
            {
                if (_hideParallelTask != null)
                {
                    _hideParallelTask.RequestStop();
                }
                _hideParallelTask = new ParallelTask(duration);
                _hideParallelTask.AddTask(InvokeHide);
                _hideParallelTask.Start();
            }
        }