/// <summary> /// Middle——》Left /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void ProductContrainer_OnProductChangedHandler(object sender, SubBusContrainer.Model.ModuleAddedArgs e) { if (e.Module is SubBusModel) { //TreeNode DesNode = null; foreach (TreeNode it in treeView_ProductInfo.Nodes) { if (it.Text.Equals(productContrainer.BusName)) { //DesNode = it; Dictionary <int, string> NodeTextDic = new Dictionary <int, string>(); int i = 0; foreach (TreeNode node in it.Nodes) { NodeTextDic.Add(i++, node.Text); } if (e.IsAdd) { it.Nodes.Add($"{e.Module.Name}_{e.Module.LocalIndex}", $"{e.Module.Name}_{e.Module.LocalIndex}"); } else { for (int j = 0; j < NodeTextDic.Count; j++) { if (NodeTextDic.ElementAt(j).Value.Contains($"{e.Module.Name}_{e.Module.LocalIndex}")) { it.Nodes.RemoveAt(j); NodeTextDic.Remove(NodeTextDic.ElementAt(j).Key); break; } } } } } } else { if (treeView_ProductInfo.Nodes.Count != 0) { if (e.IsAdd) { treeView_ProductInfo.Nodes[0].Text = e.Module.Name; } else { treeView_ProductInfo.Nodes.Clear(); } } else { treeView_ProductInfo.Nodes.Add(new TreeNode(e.Module.Name)); } OnBusModulChanged?.Invoke(this, e); } treeView_ProductInfo.ExpandAll(); //RenameTreeNode(); }
/// <summary> /// 当总线改变的时候 /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void LeftControl_OnBusModulChanged(object sender, SubBusContrainer.Model.ModuleAddedArgs e) { if (e.IsAdd) { var T = typeof(BusConfigBase); var ClassName = $"ControllerLib.BusConfigModle.BusConfig_{e.Module.Name}"; var obj = T.Assembly.CreateInstance(ClassName) as BusConfigBase; ProjController.BusCfg = obj; } else { ProjController.BusCfg = null; } // e.Name //ProjController.BusCfg=new //throw new NotImplementedException(); }