Ejemplo n.º 1
0
        static public void TreeViewUpdate(myTreeViewItem parentTree, int Level, Model.TransformerInfo transInfo)
        {
            #region TreeView 更新
            string access = "";
            if (transInfo.IsForwardHandoff && transInfo.CurrentPos + 1 <= transInfo.EndPos)
            {
                access = "分接位[" + transInfo.CurrentPos + "]切[" + (transInfo.CurrentPos + 1) + "]";
            }
            if (!transInfo.IsForwardHandoff && transInfo.CurrentPos - 1 >= transInfo.StartPos)
            {
                access = "分接位[" + transInfo.CurrentPos + "]切[" + (transInfo.CurrentPos - 1) + "]";
            }
            string[] Info = new string[4];
            Info[0] = transInfo.CompanyName;
            Info[1] = transInfo.TransformerName;
            Info[3] = transInfo.Date.ToString("yy-MM-dd");
            Info[2] = access;
            bool isExist  = false;
            bool isExist2 = false;
            bool isExist3 = false;
            bool isExist4 = false;
            //树根节点不存在时候 新建根节点
            if (parentTree.Items.Count == 0)
            {
                //当变压器属性为空的时候 啥也不做 这属于错误操作!
                if (String.IsNullOrEmpty(transInfo.TransformerName))
                {
                    return;
                }
                //不为空时 第1层节点 为 变压器所属单位名称
                Common.myTreeViewItem first_stage = new Common.myTreeViewItem();
                first_stage.FontSize   = 14;
                first_stage.HeaderText = transInfo.CompanyName;
                first_stage.TabIndex   = 1;
                parentTree.Items.Add(first_stage);
                //不为空时 第2层节点 为 变压器名称
                Common.myTreeViewItem second_stage = new Common.myTreeViewItem();
                second_stage.HeaderText = transInfo.TransformerName;
                second_stage.Icon       = first_stage.iconSourceTransformer;
                second_stage.TabIndex   = 2;
                second_stage.FontSize   = 14;
                first_stage.Items.Add(second_stage);
                if (Level >= 5)
                {
                    //不为空时 第3层节点 为 测试日期
                    Common.myTreeViewItem three_stage = new Common.myTreeViewItem();
                    three_stage.HeaderText = transInfo.Date.ToString("yyyy-MM-dd");
                    three_stage.Icon       = three_stage.iconSourceDate;
                    three_stage.TabIndex   = 3;
                    second_stage.Items.Add(three_stage);
                    //不为空时 第4层节点 为 测试的分接位
                    Common.myTreeViewItem four_stage = new Common.myTreeViewItem();

                    four_stage.HeaderText = access;
                    four_stage.TabIndex   = 4;
                    four_stage.Icon       = four_stage.iconSourceNode;
                    three_stage.Items.Add(four_stage);
                    if (Level >= 6)
                    {
                        //不为空时 第5层节点 为 测试次数
                        Common.myTreeViewItem five_stage = new Common.myTreeViewItem();
                        five_stage.HeaderText = "测试数据[" + transInfo.Date.ToLongTimeString() + "]";
                        five_stage.Icon       = five_stage.iconSourceTest_Count;
                        five_stage.TabIndex   = 5;
                        four_stage.Items.Add(five_stage);
                    }
                }
            }
            //树根节点存在时候 比较节点信息
            else
            {
                //错误操作时 啥也不做 返回
                if (String.IsNullOrEmpty(Info[0]))
                {
                    return;
                }
                foreach (Common.myTreeViewItem item in parentTree.Items)
                {
                    #region 如果 变压器所属单位已存在于TreeView中
                    if (item.HeaderText == Info[0])
                    {
                        isExist = true;
                        foreach (Common.myTreeViewItem tvii in item.Items)
                        {
                            #region 如果变压器名称已存在于TreeView中

                            if (tvii.HeaderText.ToString() == Info[1])
                            {
                                isExist2 = true;
                                if (Level >= 5)
                                {
                                    foreach (Common.myTreeViewItem tviii in tvii.Items)
                                    {
                                        #region 如果测试日期已存在于TreeView中
                                        if (tviii.HeaderText.ToString() == Info[2])
                                        {
                                            isExist3 = true;
                                            foreach (Common.myTreeViewItem tviiii in tviii.Items)
                                            {
                                                #region 如果测试分接位已存在于 TreeView中
                                                if (tviiii.HeaderText == Info[3])
                                                {
                                                    isExist4 = true;
                                                    //不为空时 第5层节点 为 测试次数
                                                    if (Level == 6)
                                                    {
                                                        Common.myTreeViewItem five_stage = new Common.myTreeViewItem();
                                                        five_stage.HeaderText = "测试数据[" + transInfo.Date.Hour + "点" + transInfo.Date.Minute + "分" + transInfo.Date.Second + "秒" + "]";
                                                        five_stage.Icon       = five_stage.iconSourceTest_Count;
                                                        five_stage.TabIndex   = 5;
                                                        tviiii.Items.Add(five_stage);
                                                        tviiii.IsExpanded = true;
                                                    }
                                                }
                                                #endregion
                                                #region 否则
                                                else if (!isExist3)
                                                {
                                                    isExist4 = false;
                                                }
                                                #endregion
                                            }
                                            if (!isExist4)
                                            {
                                                //不为空时 第4层节点 为 测试的分接位
                                                Common.myTreeViewItem four_stage = new Common.myTreeViewItem();
                                                four_stage.HeaderText = Info[3];
                                                four_stage.TabIndex   = 4;
                                                four_stage.Icon       = four_stage.iconSourceNode;
                                                tviii.Items.Add(four_stage);
                                                //不为空时 第5层节点 为 测试次数
                                                if (Level == 6)
                                                {
                                                    Common.myTreeViewItem five_stage = new Common.myTreeViewItem();
                                                    five_stage.HeaderText = "测试数据[" + transInfo.Date.Hour + "点" + transInfo.Date.Minute + "分" + transInfo.Date.Second + "秒" + "]";
                                                    five_stage.Icon       = five_stage.iconSourceTest_Count;
                                                    five_stage.TabIndex   = 5;
                                                    four_stage.Items.Add(five_stage);
                                                }
                                            }
                                        }
                                        #endregion
                                        #region 否则
                                        else
                                        {
                                            isExist3 = false;
                                        }
                                        #endregion
                                    }
                                    if (!isExist3)
                                    {
                                        //不为空时 第3层节点 为 测试日期
                                        Common.myTreeViewItem three_stage = new Common.myTreeViewItem();
                                        three_stage.HeaderText = Info[2];
                                        three_stage.Icon       = three_stage.iconSourceDate;
                                        three_stage.TabIndex   = 3;
                                        tvii.Items.Add(three_stage);
                                        //不为空时 第4层节点 为 测试的分接位
                                        Common.myTreeViewItem four_stage = new Common.myTreeViewItem();
                                        //如果是自动连续测量
                                        four_stage.HeaderText = Info[3];
                                        four_stage.TabIndex   = 4;
                                        four_stage.Icon       = four_stage.iconSourceNode;
                                        three_stage.Items.Add(four_stage);
                                        if (Level == 6)
                                        {
                                            Common.myTreeViewItem five_stage = new Common.myTreeViewItem();
                                            five_stage.HeaderText = "测试数据[" + transInfo.Date.Hour + "点" + transInfo.Date.Minute + "分" + transInfo.Date.Second + "秒" + "]";
                                            five_stage.Icon       = five_stage.iconSourceTest_Count;
                                            five_stage.TabIndex   = 5;
                                            four_stage.Items.Add(five_stage);
                                        }
                                    }
                                }
                            }
                            #endregion
                            #region 否则
                            //如果是最后一项
                            else if (!isExist2)
                            {
                                isExist2 = false;
                            }
                            #endregion
                        }
                        if (!isExist2)
                        {
                            //不为空时 第2层节点 为 变压器名称
                            Common.myTreeViewItem second_stage = new Common.myTreeViewItem();
                            second_stage.HeaderText = Info[1];
                            second_stage.Icon       = item.iconSourceTransformer;
                            second_stage.TabIndex   = 2;
                            second_stage.FontSize   = 14;
                            item.Items.Add(second_stage);
                            if (Level >= 5)
                            {
                                //不为空时 第3层节点 为 测试日期
                                Common.myTreeViewItem three_stage = new Common.myTreeViewItem();
                                three_stage.HeaderText = Info[2];
                                three_stage.Icon       = three_stage.iconSourceDate;
                                three_stage.TabIndex   = 3;
                                second_stage.Items.Add(three_stage);
                                //不为空时 第4层节点 为 测试的分接位
                                Common.myTreeViewItem four_stage = new Common.myTreeViewItem();
                                four_stage.HeaderText = Info[3];
                                four_stage.TabIndex   = 4;
                                four_stage.Icon       = four_stage.iconSourceNode;
                                three_stage.Items.Add(four_stage);
                                if (Level == 6)
                                {
                                    //不为空时 第5层节点 为 测试次数
                                    Common.myTreeViewItem five_stage = new Common.myTreeViewItem();
                                    five_stage.HeaderText = "测试数据[" + transInfo.Date.Hour + "点" + transInfo.Date.Minute + "分" + transInfo.Date.Second + "秒" + "]";
                                    five_stage.Icon       = five_stage.iconSourceTest_Count;
                                    five_stage.TabIndex   = 5;
                                    four_stage.Items.Add(five_stage);
                                }
                            }
                        }
                    }
                    #endregion
                    #region 否则
                    else if (isExist != true)
                    {
                        isExist = false;
                    }
                    #endregion
                }
                if (!isExist)
                {
                    //当变压器属性为空的时候 啥也不做 这属于错误操作!
                    if (Info[1] == "" || Info[1] == null)
                    {
                        return;
                    }
                    //不为空时 第1层节点 为 变压器所属单位名称
                    Common.myTreeViewItem first_stage = new Common.myTreeViewItem();
                    first_stage.HeaderText = Info[0];
                    first_stage.TabIndex   = 1;
                    first_stage.FontSize   = 14;
                    parentTree.Items.Add(first_stage);
                    //不为空时 第2层节点 为 变压器名称
                    Common.myTreeViewItem second_stage = new Common.myTreeViewItem();
                    second_stage.HeaderText = Info[1];
                    second_stage.Icon       = first_stage.iconSourceTransformer;
                    second_stage.TabIndex   = 2;
                    second_stage.FontSize   = 14;
                    first_stage.Items.Add(second_stage);
                    if (Level >= 5)
                    {
                        //不为空时 第3层节点 为 测试日期
                        Common.myTreeViewItem three_stage = new Common.myTreeViewItem();
                        three_stage.HeaderText = Info[2];
                        three_stage.Icon       = three_stage.iconSourceDate;
                        three_stage.TabIndex   = 3;
                        second_stage.Items.Add(three_stage);
                        //不为空时 第4层节点 为 测试的分接位
                        Common.myTreeViewItem four_stage = new Common.myTreeViewItem();
                        four_stage.HeaderText = Info[3];
                        four_stage.TabIndex   = 4;
                        four_stage.Icon       = four_stage.iconSourceNode;
                        three_stage.Items.Add(four_stage);
                        if (Level == 6)
                        {
                            //不为空时 第5层节点 为 测试次数
                            Common.myTreeViewItem five_stage = new Common.myTreeViewItem();
                            five_stage.HeaderText = "测试数据[" + transInfo.Date.Hour + "点" + transInfo.Date.Minute + "分" + transInfo.Date.Second + "秒" + "]";
                            five_stage.Icon       = five_stage.iconSourceTest_Count;
                            five_stage.TabIndex   = 5;
                            four_stage.Items.Add(five_stage);
                        }
                    }
                }
            }
            #endregion
        }
Ejemplo n.º 2
0
        static public void TreeViewUpdate(myTreeViewItem parentTree, int Level, string[] transInfo)
        {
            #region TreeView 更新
            bool isExist  = false;
            bool isExist2 = false;
            bool isExist3 = false;
            bool isExist4 = false;
            //树根节点不存在时候 新建根节点
            if (parentTree.Items.Count == 0)
            {
                //当变压器属性为空的时候 啥也不做 这属于错误操作!
                if (String.IsNullOrEmpty(transInfo[0]))
                {
                    return;
                }
                //不为空时 第1层节点 为 变压器所属单位名称
                Common.myTreeViewItem first_stage = new Common.myTreeViewItem();
                first_stage.FontSize   = 14;
                first_stage.HeaderText = transInfo[0];
                first_stage.TabIndex   = 1;
                parentTree.Items.Add(first_stage);
                //不为空时 第2层节点 为 变压器名称
                Common.myTreeViewItem second_stage = new Common.myTreeViewItem();
                second_stage.HeaderText = transInfo[1];
                second_stage.Icon       = first_stage.iconSourceTransformer;
                second_stage.TabIndex   = 2;
                second_stage.FontSize   = 14;
                first_stage.Items.Add(second_stage);
                if (Level >= 5)
                {
                    //不为空时 第3层节点 为 测试日期
                    Common.myTreeViewItem three_stage = new Common.myTreeViewItem();
                    three_stage.HeaderText = transInfo[2];
                    three_stage.Icon       = three_stage.iconSourceDate;
                    three_stage.TabIndex   = 3;
                    second_stage.Items.Add(three_stage);
                    //不为空时 第4层节点 为 测试的分接位
                    Common.myTreeViewItem four_stage = new Common.myTreeViewItem();

                    four_stage.HeaderText = transInfo[3];
                    four_stage.TabIndex   = 4;
                    four_stage.Icon       = four_stage.iconSourceNode;
                    three_stage.Items.Add(four_stage);
                    if (Level >= 6)
                    {
                        //不为空时 第5层节点 为 测试次数
                        Common.myTreeViewItem five_stage = new Common.myTreeViewItem();
                        five_stage.HeaderText = transInfo[4];
                        five_stage.Icon       = five_stage.iconSourceTest_Count;
                        five_stage.TabIndex   = 5;
                        four_stage.Items.Add(five_stage);
                    }
                }
            }
            //树根节点存在时候 比较节点信息
            else
            {
                //错误操作时 啥也不做 返回
                if (String.IsNullOrEmpty(transInfo[0]))
                {
                    return;
                }
                foreach (Common.myTreeViewItem item in parentTree.Items)
                {
                    #region 如果 变压器所属单位已存在于TreeView中
                    if (item.HeaderText == transInfo[0])
                    {
                        isExist = true;
                        foreach (Common.myTreeViewItem tvii in item.Items)
                        {
                            #region 如果变压器名称已存在于TreeView中

                            if (tvii.HeaderText.ToString() == transInfo[1])
                            {
                                isExist2 = true;
                                if (Level >= 5)
                                {
                                    foreach (Common.myTreeViewItem tviii in tvii.Items)
                                    {
                                        #region 如果测试日期已存在于TreeView中
                                        if (tviii.HeaderText.ToString() == transInfo[2])
                                        {
                                            isExist3 = true;
                                            foreach (Common.myTreeViewItem tviiii in tviii.Items)
                                            {
                                                #region 如果测试分接位已存在于 TreeView中
                                                if (tviiii.HeaderText == transInfo[3])
                                                {
                                                    isExist4 = true;
                                                    //不为空时 第5层节点 为 测试次数
                                                    if (Level == 6)
                                                    {
                                                        Common.myTreeViewItem five_stage = new Common.myTreeViewItem();
                                                        five_stage.HeaderText = transInfo[4];
                                                        five_stage.Icon       = five_stage.iconSourceTest_Count;
                                                        five_stage.TabIndex   = 5;
                                                        tviiii.Items.Add(five_stage);
                                                        tviiii.IsExpanded = true;
                                                    }
                                                }
                                                #endregion
                                                #region 否则
                                                else if (!isExist3)
                                                {
                                                    isExist4 = false;
                                                }
                                                #endregion
                                            }
                                            if (!isExist4)
                                            {
                                                //不为空时 第4层节点 为 测试的分接位
                                                Common.myTreeViewItem four_stage = new Common.myTreeViewItem();
                                                four_stage.HeaderText = transInfo[3];
                                                four_stage.TabIndex   = 4;
                                                four_stage.Icon       = four_stage.iconSourceNode;
                                                tviii.Items.Add(four_stage);
                                                //不为空时 第5层节点 为 测试次数
                                                if (Level == 6)
                                                {
                                                    Common.myTreeViewItem five_stage = new Common.myTreeViewItem();
                                                    five_stage.HeaderText = transInfo[4];
                                                    five_stage.Icon       = five_stage.iconSourceTest_Count;
                                                    five_stage.TabIndex   = 5;
                                                    four_stage.Items.Add(five_stage);
                                                }
                                            }
                                        }
                                        #endregion
                                        #region 否则
                                        else
                                        {
                                            isExist3 = false;
                                        }
                                        #endregion
                                    }
                                    if (!isExist3)
                                    {
                                        //不为空时 第3层节点 为 测试日期
                                        Common.myTreeViewItem three_stage = new Common.myTreeViewItem();
                                        three_stage.HeaderText = transInfo[2];
                                        three_stage.Icon       = three_stage.iconSourceDate;
                                        three_stage.TabIndex   = 3;
                                        tvii.Items.Add(three_stage);
                                        //不为空时 第4层节点 为 测试的分接位
                                        Common.myTreeViewItem four_stage = new Common.myTreeViewItem();
                                        //如果是自动连续测量
                                        four_stage.HeaderText = transInfo[3];
                                        four_stage.TabIndex   = 4;
                                        four_stage.Icon       = four_stage.iconSourceNode;
                                        three_stage.Items.Add(four_stage);
                                        if (Level == 6)
                                        {
                                            Common.myTreeViewItem five_stage = new Common.myTreeViewItem();
                                            five_stage.HeaderText = transInfo[4];
                                            five_stage.Icon       = five_stage.iconSourceTest_Count;
                                            five_stage.TabIndex   = 5;
                                            four_stage.Items.Add(five_stage);
                                        }
                                    }
                                }
                            }
                            #endregion
                            #region 否则
                            //如果是最后一项
                            else if (!isExist2)
                            {
                                isExist2 = false;
                            }
                            #endregion
                        }
                        if (!isExist2)
                        {
                            //不为空时 第2层节点 为 变压器名称
                            Common.myTreeViewItem second_stage = new Common.myTreeViewItem();
                            second_stage.HeaderText = transInfo[1];
                            second_stage.Icon       = item.iconSourceTransformer;
                            second_stage.TabIndex   = 2;
                            second_stage.FontSize   = 14;
                            item.Items.Add(second_stage);
                            if (Level >= 5)
                            {
                                //不为空时 第3层节点 为 测试日期
                                Common.myTreeViewItem three_stage = new Common.myTreeViewItem();
                                three_stage.HeaderText = transInfo[2];
                                three_stage.Icon       = three_stage.iconSourceDate;
                                three_stage.TabIndex   = 3;
                                second_stage.Items.Add(three_stage);
                                //不为空时 第4层节点 为 测试的分接位
                                Common.myTreeViewItem four_stage = new Common.myTreeViewItem();
                                four_stage.HeaderText = transInfo[3];
                                four_stage.TabIndex   = 4;
                                four_stage.Icon       = four_stage.iconSourceNode;
                                three_stage.Items.Add(four_stage);
                                if (Level == 6)
                                {
                                    //不为空时 第5层节点 为 测试次数
                                    Common.myTreeViewItem five_stage = new Common.myTreeViewItem();
                                    five_stage.HeaderText = transInfo[4];
                                    five_stage.Icon       = five_stage.iconSourceTest_Count;
                                    five_stage.TabIndex   = 5;
                                    four_stage.Items.Add(five_stage);
                                }
                            }
                        }
                    }
                    #endregion
                    #region 否则
                    else if (isExist != true)
                    {
                        isExist = false;
                    }
                    #endregion
                }
                if (!isExist)
                {
                    //当变压器属性为空的时候 啥也不做 这属于错误操作!
                    if (transInfo[1] == "" || transInfo[1] == null)
                    {
                        return;
                    }
                    //不为空时 第1层节点 为 变压器所属单位名称
                    Common.myTreeViewItem first_stage = new Common.myTreeViewItem();
                    first_stage.HeaderText = transInfo[0];
                    first_stage.TabIndex   = 1;
                    first_stage.FontSize   = 14;
                    parentTree.Items.Add(first_stage);
                    //不为空时 第2层节点 为 变压器名称
                    Common.myTreeViewItem second_stage = new Common.myTreeViewItem();
                    second_stage.HeaderText = transInfo[1];
                    second_stage.Icon       = first_stage.iconSourceTransformer;
                    second_stage.TabIndex   = 2;
                    second_stage.FontSize   = 14;
                    first_stage.Items.Add(second_stage);
                    if (Level >= 5)
                    {
                        //不为空时 第3层节点 为 测试日期
                        Common.myTreeViewItem three_stage = new Common.myTreeViewItem();
                        three_stage.HeaderText = transInfo[2];
                        three_stage.Icon       = three_stage.iconSourceDate;
                        three_stage.TabIndex   = 3;
                        second_stage.Items.Add(three_stage);
                        //不为空时 第4层节点 为 测试的分接位
                        Common.myTreeViewItem four_stage = new Common.myTreeViewItem();
                        four_stage.HeaderText = transInfo[3];
                        four_stage.TabIndex   = 4;
                        four_stage.Icon       = four_stage.iconSourceNode;
                        three_stage.Items.Add(four_stage);
                        if (Level == 6)
                        {
                            //不为空时 第5层节点 为 测试次数
                            Common.myTreeViewItem five_stage = new Common.myTreeViewItem();
                            five_stage.HeaderText = transInfo[4];
                            five_stage.Icon       = five_stage.iconSourceTest_Count;
                            five_stage.TabIndex   = 5;
                            four_stage.Items.Add(five_stage);
                        }
                    }
                }
            }
            #endregion
        }