private void LoadData() { var type = fanuc.CurLimitBom.GetType(); LimitNodes = new List <MaintainSubLimitDto>(); foreach (PropertyInfo item in type.GetProperties()) { var attributes = item.GetCustomAttribute <DisplayAttribute>(); if (attributes != null && (attributes.GetAutoGenerateField() ?? true)) { var limit = item.GetValue(fanuc.CurLimitBom) as LimitBomItem; if (limit == null) { continue; } var node = new MaintainSubLimitDto() { PropertyName = item.Name, Title = attributes.Name, LimitUp = limit.LimitUp ?? 0, LimitDown = limit.LimitDown ?? 0 }; node.ShowLimitWindowEvent += Node_ShowLimitWindowEvent; LimitNodes.Add(node); } } }
private void ViewModel_ShowLimitWindowEvent(Fanuc fanuc, MaintainSubLimitDto obj) { maintainSubLimitDto = obj; var dlg = new MacroDataInputDialog(fanuc, (obj.Type == "Up" ? obj.LimitUp : obj.LimitDown) + "", $"输入{obj.Title}"); dlg.SaveInputEvent += Dlg_SaveInputEvent; dlg.ShowDialog(); }
private void Node_ShowLimitWindowEvent(MaintainSubLimitDto obj) { ShowLimitWindowEvent?.Invoke(fanuc, obj); }