Пример #1
0
 /// <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();
 }
Пример #2
0
        /// <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();
        }