コード例 #1
0
        void AppDialogShowing(object sender, RevitDialogEvents.DialogBoxShowingEventArgs args)
        {
            int dialogId = args.HelpId;

            String promptInfo = "A Revit dialog will be opened.\n";

            promptInfo += "The help id of this dialog is " + dialogId.ToString() + "\n";
            promptInfo += "If you don't want the dialog to open, please press cancel button";

            TaskDialog taskDialog = new TaskDialog("Revit");

            taskDialog.MainContent = promptInfo;
            TaskDialogCommonButtons buttons = TaskDialogCommonButtons.Ok |
                                              TaskDialogCommonButtons.Cancel;

            taskDialog.CommonButtons = buttons;
            TaskDialogResult result = taskDialog.Show();

            if (TaskDialogResult.Cancel == result)
            {
                args.OverrideResult(1);
            }
            else
            {
                args.OverrideResult(0);
            }
        }
コード例 #2
0
        public static void HandleDialogBoxShowing(object sender, Autodesk.Revit.UI.Events.DialogBoxShowingEventArgs e)
        {
            TaskDialogShowingEventArgs taskEvent = e as TaskDialogShowingEventArgs;
            MessageBoxShowingEventArgs msgEvent  = e as MessageBoxShowingEventArgs;

            try
            {
                if (taskEvent != null)
                {
                    //  Click OK
                    string dialogId = taskEvent.DialogId;
                    int    helpId   = taskEvent.HelpId;
                    string message  = taskEvent.Message;
                    LogFileManager.AppendLog("TaskDialog Message", message);
                    taskEvent.OverrideResult((int)WinForms.DialogResult.OK);
                }
                else if (msgEvent != null)
                {
                    int    okid       = (int)WinForms.DialogResult.OK;
                    int    dialogType = msgEvent.DialogType;
                    int    helpId     = msgEvent.HelpId;
                    string message    = msgEvent.Message;
                    LogFileManager.AppendLog("MessageBox Message", message);
                    msgEvent.OverrideResult(okid);
                }
                else
                {
                    LogFileManager.AppendLog("Windows MessageBox Id", e.HelpId.ToString());
                    e.OverrideResult(1);
                }
            }
            catch (Exception ex)
            {
                string message = ex.Message;
            }
        }