/// <summary>
        /// Shows the dialog with specify config of dialog.
        /// </summary>
        /// <param name="configure">A delegate to configure how to show dialog.</param>
        public void Show(Action <DialogOption> configure)
        {
            var options = new DialogOption();

            configure(options);

            Modal          = new DialogModel(options);
            Modal.OnClose += Close;
            OnDialogUpdated?.Invoke();
        }
 /// <summary>
 /// Performs application-defined tasks associated with freeing, releasing, or resetting unmanaged resources.
 /// </summary>
 public void Dispose()
 {
     Modal = null;
 }