/// <summary> /// 添加一个带触发功能的光源控制器 /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void toolStripMenuItemAddLightTrig_Click(object sender, EventArgs e) { FormAddMChnDev fm = new FormAddMChnDev(); fm.Text = "添加光源控制器设备_T"; string[] devIDs = JFHubCenter.Instance.InitorManager.GetIDs(typeof(IJFDevice_LightControllerWithTrig)); //所有触发控制设备ID,过滤掉其中的光源控制器 if (null == devIDs || 0 == devIDs.Length) { MessageBox.Show("设备列表中不存在光源控制器设备_T"); return; } fm.SetOptionalDeviceIDs(devIDs); fm.SetChannelTypes(new string[] { "开关通道数量:", "触发通道数量:" }); if (DialogResult.OK != fm.ShowDialog()) { return; } JFHubCenter.Instance.MDCellNameMgr.AddLightCtrlDev(fm.DeviceID); JFHubCenter.Instance.MDCellNameMgr.SetLightCtrlChannelCount(fm.DeviceID, fm.ChannelCount[0]); JFHubCenter.Instance.MDCellNameMgr.AddTrigCtrlDev(fm.DeviceID); JFHubCenter.Instance.MDCellNameMgr.SetTrigCtrlChannelCount(fm.DeviceID, fm.ChannelCount[1]); _AddDevNode(fm.DeviceID, DevNodeCategory.LightCtrlTDev); }
/// <summary> /// 添加一个触发控制器 /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void toolStripMenuItemAddTrigCtrl_Click(object sender, EventArgs e) { FormAddMChnDev fm = new FormAddMChnDev(); fm.Text = "添加触发控制器设备"; string[] devIDs = JFHubCenter.Instance.InitorManager.GetIDs(typeof(IJFDevice_TrigController)); //所有触发控制设备ID,过滤掉其中的光源控制器 if (null == devIDs || 0 == devIDs.Length) { MessageBox.Show("设备列表中不存在触发控制器设备"); return; } List <string> trigDevIDs = new List <string>(); foreach (string devID in devIDs) { if (!typeof(IJFDevice_LightController).IsAssignableFrom(JFHubCenter.Instance.InitorManager.GetInitor(devID).GetType())) { trigDevIDs.Add(devID); } } if (trigDevIDs.Count == 0) { MessageBox.Show("设备列表中不存在触发控制器设备..."); return; } fm.SetOptionalDeviceIDs(trigDevIDs.ToArray()); fm.SetChannelTypes(new string[] { "触发通道数量:" }); if (DialogResult.OK != fm.ShowDialog()) { return; } JFHubCenter.Instance.MDCellNameMgr.AddTrigCtrlDev(fm.DeviceID); JFHubCenter.Instance.MDCellNameMgr.SetTrigCtrlChannelCount(fm.DeviceID, fm.ChannelCount[0]); _AddDevNode(fm.DeviceID, DevNodeCategory.TrigCtrlDev); }