public void Application_ProgressChanged(object sender, Autodesk.Revit.DB.Events.ProgressChangedEventArgs e) { ExecuteEventHooks(EventType.Application_ProgressChanged, sender, e); }
void RevitApp_ProgressChanged(object sender, Autodesk.Revit.DB.Events.ProgressChangedEventArgs e) { if ((e.Stage == Autodesk.Revit.DB.Events.ProgressStage.Unchanged) || ((e.Stage == Autodesk.Revit.DB.Events.ProgressStage.PositionChanged) && e.Cancellable)) { this.button_Cancel.IsEnabled = true; } else { this.button_Cancel.IsEnabled = false; } System.Windows.Forms.Application.DoEvents(); if (m_cancel) { bool shouldCancel = e.Cancellable; if (e.IsCancelled()) { textBox_log.Text += "!! We are already canceled!" + Environment.NewLine; } try { e.Cancel(); m_cancel = false; } catch (Exception ex) { textBox_log.Text += ("Exception: " + ex.ToString() + Environment.NewLine + "' Cancelable' value: " + shouldCancel + Environment.NewLine); } } ProgressItem itemReturn = m_progressStack.AddEventData(e); this.stackPanel_ProgressData.Children.Clear(); List <string> progressItems = m_progressStack.ToStringList(6); foreach (string progressItem in progressItems) { TextBox tbProgressItem = new TextBox(); tbProgressItem.Text = progressItem; if (tbProgressItem.Text.Contains("<None>")) { tbProgressItem.Foreground = Brushes.LightSlateGray; } this.stackPanel_ProgressData.Children.Add(tbProgressItem); } if ((itemReturn.Stage == Autodesk.Revit.DB.Events.ProgressStage.RangeChanged) || (itemReturn.Stage == Autodesk.Revit.DB.Events.ProgressStage.Unchanged)) { string previousEventData = "null"; if (m_previousEvent != null) { previousEventData = m_previousEvent.ToString(); } // textBox_log.Text += "Previous: "+ previousEventData + Environment.NewLine + "Current: " + itemReturn.ToString() + Environment.NewLine; } System.Windows.Forms.Application.DoEvents(); m_previousEvent = itemReturn; }