private void AddListToScreen(SearchList sl,DemoGuiList demoList)
        {
            //int cPosX = 49;
            int cPosY = 40;
            SearchListData tmpLoop = sl.head;
            while (tmpLoop != null)
            {
                SearchListData vaLoop = tmpLoop.child;

                //Add demoList (dynamic change)
                DemoGuiListData dMainList = demoList.AddList(tmpLoop, null, null);
                while (vaLoop != null)
                {
                    //create pic status
                    PictureBox px = new PictureBox();
                    px.Image = global::ConfigCompliance.Properties.Resources.cross;
                    px.Location = new System.Drawing.Point(49, cPosY);
                    px.Size = new System.Drawing.Size(16, 16);
                    px.SizeMode = System.Windows.Forms.PictureBoxSizeMode.AutoSize;
                    px.TabIndex = 3;
                    px.TabStop = false;
                    this.groupProfile.Controls.Add(px);

                    //create Lable
                    Label lb = new Label();
                    lb.AutoSize = true;
                    lb.Font = new System.Drawing.Font("Microsoft Sans Serif", 9F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
                    lb.Location = new System.Drawing.Point(70, cPosY);
                    lb.Size = new System.Drawing.Size(140, 15);
                    lb.TabIndex = 2;
                    lb.Text = tmpLoop.key + " " + vaLoop.key;
                    this.groupProfile.Controls.Add(lb);
                    //update pos Y
                    cPosY += 20;
                    Console.WriteLine("-> " + tmpLoop.key + " " + vaLoop.key);

                    //Add demoList (dynamic change)
                    DemoGuiListData dValist = demoList.AddChildList(vaLoop, lb, px, dMainList);

                    SearchListData subData = vaLoop.child;
                    while (subData != null)
                    {
                        //create pic status
                        PictureBox px1 = new PictureBox();
                        px1.Image = global::ConfigCompliance.Properties.Resources.cross;
                        px1.Location = new System.Drawing.Point(49, cPosY);
                        px1.Size = new System.Drawing.Size(16, 16);
                        px1.SizeMode = System.Windows.Forms.PictureBoxSizeMode.AutoSize;
                        px1.TabIndex = 3;
                        px1.TabStop = false;
                        this.groupProfile.Controls.Add(px1);
                        //create Lable
                        Label lb1 = new Label();
                        lb1.AutoSize = true;
                        lb1.Font = new System.Drawing.Font("Microsoft Sans Serif", 9F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
                        lb1.Location = new System.Drawing.Point(70 + 10, cPosY);
                        lb1.Name = "llabel";
                        lb1.Size = new System.Drawing.Size(140, 15);
                        lb1.TabIndex = 2;
                        lb1.Text = subData.key;
                        this.groupProfile.Controls.Add(lb1);
                        //update pos Y
                        cPosY += 20;
                        Console.WriteLine("---> " + subData.key);
                        DemoGuiListData dSubData = demoList.AddChildList(subData, lb1, px1, dValist);

                        subData = subData.next;
                    }
                    vaLoop = vaLoop.next;
                }
                tmpLoop = tmpLoop.next;
            }
        }