void UpdateStationUI() { if (null == _station) { return; } _ucS4AxisPanel.UpdateStationUI(); foreach (UcSimpleAxisInStation usa in _lstSimpleAxisPanels) { usa.UpdateAxisUI(); } foreach (Control ctrl in panelAxisStatus.Controls) { UcAxisStatusIS uas = ctrl as UcAxisStatusIS; uas.UpdateAxisStatus(); } }
//List<UcAxisStatus> _lstAxisStatus = new List<UcAxisStatus>(); //轴状态控件 public void LayoutStation() { panelAxisOpt.Controls.Clear(); panelAxisStatus.Controls.Clear(); _lstSimpleAxisPanels.Clear(); //_lstAxisStatus.Clear(); if (null == _station) { ShowTips("工站未设置"); btMoveToWorkPos.Enabled = false; btSaveCurr2WorkPos.Enabled = false; cbMoveWorkPos.Enabled = false; cbSaveWorkPos.Enabled = false; btOpenAllDev.Enabled = false; return; } btOpenAllDev.Enabled = true; btMoveToWorkPos.Enabled = true; btSaveCurr2WorkPos.Enabled = true; cbMoveWorkPos.Enabled = true; cbMoveWorkPos.Items.Clear(); cbSaveWorkPos.Enabled = true; cbSaveWorkPos.Items.Clear(); if (null != _station.WorkPositionNames) { cbMoveWorkPos.Items.AddRange(_station.WorkPositionNames); cbSaveWorkPos.Items.AddRange(_station.WorkPositionNames); } if (null != _station.AxisNames && _station.AxisNames.Length > 0) { if (_station.StandardAxisCount > 0) //添加一个标准4轴控制面板 { string[] standardAxisNames = _station.AxisNames.Take(_station.StandardAxisCount).ToArray(); _ucS4AxisPanel.Top = 0; _ucS4AxisPanel.SetAxisNames(standardAxisNames); panelAxisOpt.Controls.Add(_ucS4AxisPanel); } int bottom = _ucS4AxisPanel.Bottom; //添加剩下的单轴操作面板 for (int i = _station.StandardAxisCount; i < _station.AxisNames.Length; i++) { UcSimpleAxisInStation ucSAS = new UcSimpleAxisInStation(); ucSAS.SetAxisName(_station.AxisNames[i]); _lstSimpleAxisPanels.Add(ucSAS); ucSAS.Top = bottom + 3; bottom = ucSAS.Bottom; panelAxisOpt.Controls.Add(ucSAS); } bottom = 0; for (int i = 0; i < _station.AxisNames.Length; i++) { UcAxisStatusIS ucStatus = new UcAxisStatusIS(); ucStatus.Top = bottom; ucStatus.SetAxisName(_station.AxisNames[i]); //_lstAxisStatus.Add(ucStatus); panelAxisStatus.Controls.Add(ucStatus); bottom = ucStatus.Bottom; //ucStatus.SetAxis() } } }