public void RemoveElement(SimuViewBaseModel element) { if (_elements.ContainsValue(element)) { RemoveElement(element.X, element.Y); } }
public SimuViewBaseModel ReplaceElement(SimuViewBaseModel element) { SimuViewBaseModel oldele = null; bool flag = false; // Remove old element before if (element is SimuViewOutBitModel || element is SimuViewOutRecModel) { element.X = 11; if (element.Y >= 0 && element.Y < RowCount) { flag = true; } } else { if (element.X >= 0 && element.X < 11 && element.Y >= 0 && element.Y < RowCount) { flag = true; } } if (flag) { IntPoint p = new IntPoint(element.X, element.Y); if (_elements.Keys.Contains(p)) { oldele = _elements[p]; _elements.Remove(p); LadderCanvas.Children.Remove(oldele); } _elements.Add(p, element); LadderCanvas.Children.Add(element); } //UpdateRowCount(); return(oldele); }
/// <summary> /// 建立与元件显示模型的事件连接 /// </summary> /// <param name="svbmodel"></param> public void BuildRouted(SimuViewBaseModel svbmodel) { svbmodel.VariableUnitLocked += OnVariableUnitLocked; svbmodel.VariableUnitUnlocked += OnVariableUnitUnlocked; svbmodel.VariableUnitValueChanged += OnVariableUnitValueChanged; }