using System; using System.Collections.Generic; using System.ComponentModel; using System.Drawing; using System.Data; using System.Linq; using System.Text; using System.Threading.Tasks; using System.Windows.Forms; using Bro.Common.Interface; using Bro.Common.Base; using Bro.Common.Model; namespace Bro.UI.Device.Winform { public partial class CtrlMotionCardRunBase : UserControl, IRunCtrl { public CtrlMotionCardRunBase() { InitializeComponent(); } public CtrlMotionCardRunBase(IDevice device) { InitializeComponent(); Device = device; InitialLayout(); } public IDevice Device { get; set; } protected MotionCardBase MotionCard { get => Device as MotionCardBase; } private void MotionCard_OnMonitorInvoke(DateTime arg1, string arg2, IDevice arg3, IMonitorSet arg4) { throw new NotImplementedException(); } private void InitialLayout() { foreach (var axisConfig in MotionCard.IConfig.AxisSettings.FindAll(u => u.IsAxisEnabled)) { var axisMovingStatus = MotionCard.AxisMovingOptionValues.FirstOrDefault(u => u.AxisIndex == axisConfig.AxisIndex); if (axisMovingStatus == null) { axisMovingStatus = new AxisMovingStatus(); } CtrlMotionCardAxisStatus ctrlMotionCardAxisStatus = new CtrlMotionCardAxisStatus(axisMovingStatus); //ctrlMotionCardAxisStatus.Dock = DockStyle.Fill; flowLayoutPanel1.Controls.Add(ctrlMotionCardAxisStatus); } CtrlMotionCardIOStatus ctrlMotionCardIOStatus = new CtrlMotionCardIOStatus(Device, MotionCard.MonitorValues); //ctrlMotionCardIOStatus.Dock = DockStyle.Fill; flowLayoutPanel2.Controls.Add(ctrlMotionCardIOStatus); } private void buttonMotionCardOperation_Click(object sender, EventArgs e) { FrmMotionCardOperationBase motionCardOperationBase = new FrmMotionCardOperationBase(Device); motionCardOperationBase.Show(); } } }