public MessageBoxViewModel(WPFMessageBox view,
                                   string title, string message, string innerMessage,
                                   WPFMessageBoxButtons buttonOption, WPFMessageBoxImage image)
        {
            Title               = title ?? Localization.TranslationManager.Instance.TranslateString("ErrorMessageCaption");
            Message             = message;
            InnerMessageDetails = innerMessage;
            InitDefaultButtonTexts();

            SetButtonVisibility(buttonOption);
            SetImageSource(image);
            _view = view;
        }
        public static WPFMessageBoxResult Show(string title, string message, string details, WPFMessageBoxButtons buttonOption, WPFMessageBoxImage image, Dictionary <WPFMessageBoxResult, string> buttonTexts = null)
        {
            int windowId = 0;

            lock (lockObj)
                windowId = windowCounter++;

            var view      = new WPFMessageBox();
            var viewModel = new MessageBoxViewModel(view, title, message, details, buttonOption, image, buttonTexts);

            view.DataContext = viewModel;

            view.ShowDialog();

            return(view.Result);
        }