1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192 |
- /* ==============================================================================
- * 功能描述:MessageShow
- * 创 建 者:SAGACLOUD
- * 创建日期:2017/8/25 9:49:58
- * ==============================================================================*/
- using System;
- using System.Text;
- using System.Windows.Forms;
- using Autodesk.Revit.UI;
- using SAGA.DotNetUtils;
- using SAGA.DotNetUtils.Others;
- using SAGA.RevitUtils.ErrorSupports;
- using SAGA.RevitUtils.Extends;
- using SAGA.RevitUtils.Log;
- using SAGA.RevitUtils.WinForm;
- namespace SAGA.RevitUtils
- {
- /// <summary>
- /// MessageShow
- /// </summary>
- public class MessageShow : MessageShowBase
- {
- public static TaskDialogResult Infomation(string strMessage)
- {
- if (strMessage.Length < 80)
- {
- if (!strMessage.Contains(Environment.NewLine))
- {
- StringBuilder builder = new StringBuilder();
- for (int i = 0; i < strMessage.Length; i++)
- {
- builder.Append(strMessage[i]);
- if ((i % 0x25) == 0x24)
- {
- builder.Append(Environment.NewLine);
- }
- }
- strMessage = builder.ToString();
- }
- string title = "上格云技术";
- TaskDialog dialog = new TaskDialog(title)
- {
- TitleAutoPrefix = false,
- MainContent = strMessage
- };
- return dialog.Show();
- }
- Win32WindowImpl owner = new Win32WindowImpl(RevitProcess.GetMainWindowHandle());
- TErrorSupport support = new TErrorSupport(ErrorGrades.Information, strMessage, null);
- if (support.ShowDialog(owner) == DialogResult.OK)
- {
- return TaskDialogResult.Ok;
- }
- return TaskDialogResult.Cancel;
- }
- public static bool Question(string strText)
- {
- return MessageShowBase.Question(strText);
- }
- public static TaskDialogResult Show(Exception ex, bool blnDebug = false, string strMessage = "")
- {
- if (blnDebug)
- {
- Write(ex);
- return TaskDialogResult.Ok;
- }
- if (ex is ShowInfoStringException)
- {
- return Infomation(ex.Message);
- }
- Win32WindowImpl owner = new Win32WindowImpl(RevitProcess.GetMainWindowHandle());
- TErrorSupport support = new TErrorSupport(strMessage, ex);
- if (support.ShowDialog(owner) == DialogResult.OK)
- {
- return TaskDialogResult.Ok;
- }
- return TaskDialogResult.Cancel;
- }
- public static void Write(Exception ex)
- {
- if (ex != null)
- {
- LogHelper.WriterAsyn(PubMethod.CreateGuidKey() + Environment.NewLine + ex.ToString() + Environment.NewLine);
- }
- }
- }
- }
|