Exemplo n.º 1
0
        /// <summary>
        /// pnl 的顺序,以及个数
        /// </summary>
        private void PnlOrd()
        {
            int InParkDevCount = 0;
            int OutParkDevCount = 0;
            int incount = 0;
            int outcount = 0;
            DataTable tab = new DataTable();
            tab.Columns.Add("通讯站址");
            string[] address = GetStatAddress();
            foreach (string str in address)
            {
                DataRow dr = tab.NewRow();
                dr["通讯站址"] = str;
                if (Convert.ToInt16(str) < 129) incount = incount + 1;
                if (Convert.ToInt16(str) >= 129) outcount = outcount + 1;
                tab.Rows.Add(dr);
            }
            if (tab == null)
                return;
            if (incount > 1)
                InParkDevCount = 2;
            else
                InParkDevCount = 1;
            if (outcount > 1)
                OutParkDevCount = 2;
            else
                OutParkDevCount = 1;

            Panel[] plIn = new Panel[InParkDevCount];
            Panel[] plOut = new Panel[OutParkDevCount];
            switch (InParkDevCount)
            {
                case 1:
                    Panel[] pnlInOne = { p_in1 };
                    plIn = pnlInOne;
                    break;
                case 2:
                    Panel[] pnlInTwo = { p_in1, p_in2 };
                    plIn = pnlInTwo;
                    break;
            }
            switch (OutParkDevCount)
            {
                case 1:
                    Panel[] pnlOutOne = { p_out1 };
                    plOut = pnlOutOne;
                    break;
                case 2:
                    Panel[] pnlOutTwo = { p_out1, p_out2 };
                    plOut = pnlOutTwo;
                    break;
            }
            Panel[] plInOut = new Panel[plIn.Length + plOut.Length];
            plIn.CopyTo(plInOut, 0);
            int index = plIn.Length;
            plOut.CopyTo(plInOut, index);

            VideoView(plInOut);
        }