//Event Handlers public int OnDestroy() { GlobalCache.Instance.OperId = string.Empty; ProcessLine.CurrentProcessLine = null; if (frm != null) { frm.Dispose(); frm = null; } DetachEventHandlers(); return(0); }
/// <summary> /// Add form to taskpanel /// </summary> public void Routing(IModelDoc2 doc, ISldWorks swApp, List <string> routingIds) { ITaskpaneView pTaskPanView = null; if (GlobalCache.Instance.PTaskPanView == null) { pTaskPanView = iSwApp.CreateTaskpaneView2("", "关联工艺路线"); GlobalCache.Instance.PTaskPanView = pTaskPanView; } else { pTaskPanView = GlobalCache.Instance.PTaskPanView; } frm = new ProcessLine(doc, swApp, routingIds); pTaskPanView.DisplayWindowFromHandle(frm.Handle.ToInt32()); }
private void btnConfirm_Click(object sender, EventArgs e) { List <string> itemList = new List <string>(); for (int i = 0; i < cklProcessList.Items.Count; i++) { if (cklProcessList.GetItemChecked(i)) { //LItem li = (LItem)cklProcessList.Items[i]; itemList.Add(cklProcessList.Items[i].ToString()); } } ///save relation try { foreach (var sketchName in itemList) { CSketchFileProcess sp = new CSketchFileProcess(); sp.SketchProcessId = Guid.NewGuid().ToString(); sp.OperId = _operId; sp.RoutingId = _routingId; sp.SketchName = sketchName; sp.ComponentName = _componentName; sp.ComponentPath = _componentName; spContent.SketchFileProcesses.InsertOnSubmit(sp); } spContent.SubmitChanges(); MessageBox.Show("关联草图到工序成功!"); ProcessLine processline = ProcessLine.CurrentProcessLine; processline.SetTreeNodeBackColor(_operId); } catch (Exception ex) { MessageBox.Show(ex.Message); } this.Close(); }
private void btnComfirm_Click(object sender, EventArgs e) { var routings = from p in rcontext.ProcessFileRoutinges where p.ProcessFileName == GlobalCache.Instance.ComponetName && p.RoutingId == cbxProcessLine.SelectedValue.ToString() select p; if (routings.Count() > 0) { MessageBox.Show("该零件已和选中的工艺路线进行了关联!"); return; } ProcessFileRouting processFileRouting = new ProcessFileRouting(); processFileRouting.RoutingId = cbxProcessLine.SelectedValue.ToString(); processFileRouting.ProcessFileRoutingId = Guid.NewGuid().ToString(); processFileRouting.ProcessFileName = _processFilePath; processFileRouting.ProcessFilePath = _processFilePath; processFileRouting.OperId = ""; try { rcontext.ProcessFileRoutinges.InsertOnSubmit(processFileRouting); rcontext.SubmitChanges(); MessageBox.Show("关联零件到工艺路线成功!"); ITaskpaneView pTaskPanView = null; if (GlobalCache.Instance.PTaskPanView == null) { pTaskPanView = _swApp.CreateTaskpaneView2("", "关联工艺路线"); GlobalCache.Instance.PTaskPanView = pTaskPanView; } else { pTaskPanView = GlobalCache.Instance.PTaskPanView; } ProcessLine frm = null; if (ProcessLine.CurrentProcessLine == null) { frm = new ProcessLine( _doc, _swApp, new List <string>() { processFileRouting.RoutingId }); pTaskPanView.DisplayWindowFromHandle(frm.Handle.ToInt32()); } else { ///show in task plane ProcessLine.CurrentProcessLine.AddProcessLine( null, new RoutingEventArgs() { RoutingId = processFileRouting.RoutingId, RoutingName = ((Routing)cbxProcessLine.SelectedItem).Name }); } } catch { MessageBox.Show("关联零件到工艺路线出错!"); } this.Dispose(); GC.Collect(); }