示例#1
0
 public void RemoveElement(SimuViewBaseModel element)
 {
     if (_elements.ContainsValue(element))
     {
         RemoveElement(element.X, element.Y);
     }
 }
示例#2
0
        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);
        }
示例#3
0
 /// <summary>
 /// 建立与元件显示模型的事件连接
 /// </summary>
 /// <param name="svbmodel"></param>
 public void BuildRouted(SimuViewBaseModel svbmodel)
 {
     svbmodel.VariableUnitLocked       += OnVariableUnitLocked;
     svbmodel.VariableUnitUnlocked     += OnVariableUnitUnlocked;
     svbmodel.VariableUnitValueChanged += OnVariableUnitValueChanged;
 }