/// <summary> /// 操作等待窗口 /// </summary> /// <param name="routine">操作调用</param> /// <param name="title">提示</param> /// <param name="canCancel">是否用户可以取消</param> /// <param name="IsIndeterminate">是否为连续模式</param> /// <param name="refreshRate">刷新频率</param> /// <param name="threadParameter">运行参数(线程自己解析)</param> public dlgPorcessWaiting(ProcessRoutineDelegate routine, string title, bool canCancel, bool IsIndeterminate = false, double refreshRate = 1.0, object threadParameter = null) { InitializeComponent(); this.Title = title; processRoutine = routine; this.threadParameter = threadParameter; processingBar.IsIndeterminate = IsIndeterminate; this.refreshRate = refreshRate; if (!canCancel) { btnCancel.Visibility = System.Windows.Visibility.Collapsed; } Closing += new System.ComponentModel.CancelEventHandler(dlgPorcessWaiting_Closing); }
/// <summary> /// 操作等待窗口 /// </summary> /// <param name="routine">操作调用</param> /// <param name="title">提示</param> /// <param name="canCancel">是否用户可以取消</param> /// <param name="IsIndeterminate">是否为连续模式</param> /// <param name="parameter">运行参数(线程自己解析)</param> public PorcessWaitWindow(ProcessRoutineDelegate routine, string title, bool canCancel, bool IsIndeterminate = false, object parameter = null) { InitializeComponent(); promptTitle.Text = title; processRoutine = routine; this.threadParameter = new Common.WaitProcessParameter() { threadParameter = parameter }; processingBar.IsIndeterminate = IsIndeterminate; if (!canCancel) { btnCancel.Visibility = System.Windows.Visibility.Collapsed; } Closing += new System.ComponentModel.CancelEventHandler(dlgPorcessWaiting_Closing); rootGrid.DataContext = threadParameter; }