Exemple #1
0
 /// <summary>
 /// 选中所有  被选中item的子项
 /// </summary>
 /// <param name="sender"></param>
 /// <param name="e"></param>
 private void menuSelectAllChildren_Click(object sender, RoutedEventArgs e)
 {
     if (MainTree.SelectedItem != null)
     {
         TraceSetTreeModel tree = (TraceSetTreeModel)MainTree.SelectedItem;
         tree.ISChecked = true;
         tree.SetAllChildrenChecked(true);
     }
 }
Exemple #2
0
        /// <summary>
        /// 数据绑定 解析XML文件的数据并绑定
        /// </summary>
        private void tvDataBinding()
        {
            List <string> myList = new List <string>();

            /// 从配置文件TraceSwitch.xml中读取 BoardStyleName
            GetBoardStyleName(myList);

            ///根据每个BoardStyleName,获取其中具体的子项
            for (int i = 0; i < myList.Count; i++)
            {
                TraceSetTreeModel subTree = new TraceSetTreeModel();
                subTree.Name       = myList[i].ToString();
                subTree.IsExpanded = false;

                //获取 BoardStyleName 中,具体的  Name 列表
                List <string> nameList = new List <string>();
                GetName(nameList, myList[i]);

                if (myList[i] == "SCP")
                {
                    //分别存储 LTE 和 TD
                    List <string> strLTEList = new List <string>();
                    List <string> strTDList  = new List <string>();
                    GetLTEAndTD(strLTEList, strTDList, nameList);

                    TraceSetTreeModel treeLTE = new TraceSetTreeModel();
                    treeLTE.Name   = "LTE";
                    treeLTE.Parent = subTree;
                    foreach (string strLTE in strLTEList)
                    {
                        TraceSetTreeModel childLTETree = new TraceSetTreeModel();
                        childLTETree.Name   = strLTE;
                        childLTETree.Parent = treeLTE;

                        treeLTE.Children.Add(childLTETree);
                    }
                    subTree.Children.Add(treeLTE);

                    TraceSetTreeModel treeTD = new TraceSetTreeModel();
                    treeTD.Name   = "TD";
                    treeTD.Parent = subTree;
                    foreach (string strTD in strTDList)
                    {
                        TraceSetTreeModel childTDTree = new TraceSetTreeModel();
                        childTDTree.Name   = strTD;
                        childTDTree.Parent = treeTD;

                        treeTD.Children.Add(childTDTree);
                    }
                    subTree.Children.Add(treeTD);
                }
                else
                {
                    for (int j = 0; j < nameList.Count; j++)
                    {
                        TraceSetTreeModel childTree = new TraceSetTreeModel();
                        childTree.Name   = nameList[j].ToString();
                        childTree.Parent = subTree;

                        subTree.Children.Add(childTree);
                    }
                }

                tmList.Add(subTree);
            }

            ItemSourceData = tmList;
        }