public void loadcomments(string mainid)
    {
        string getallmessages = @"SELECT     Propic.Image, Message.Message, Message.UID
FROM         Message INNER JOIN
                      Propic ON Message.UID = Propic.UID
WHERE     (Propic.[Current] = 1) AND (Message.CID = " + mainid + @")
ORDER BY Message.ID ASC";

        ccid.Text = mainid;
        dt        = new DataTable();
        dt        = db.ReturnDT(getallmessages);
        for (int x = 0; x < dt.Rows.Count; x++)
        {
            Panel panel = new Panel();
            RoundedCornersExtender rnd = new RoundedCornersExtender();


            panel.ID            = x.ToString();
            rnd.TargetControlID = x.ToString();
            rnd.Radius          = 5;
            panel.BackColor     = System.Drawing.Color.FromArgb(239, 239, 241);

            RadBinaryImage rbg = new RadBinaryImage();
            rbg.Height     = 35;
            rbg.Width      = 35;
            rbg.DataValue  = (byte[])dt.Rows[x]["Image"];
            rbg.ResizeMode = BinaryImageResizeMode.Crop;
            rbg.CssClass   = "sidemeyaaar";
            panel.Controls.Add(rbg);

            Label lbl = new Label();
            lbl.CssClass = "sidemeyaaarright";
            lbl.Text     = dt.Rows[x]["Message"].ToString();
            panel.Controls.Add(lbl);



            messageloader.Controls.Add(rnd);


            messageloader.Controls.Add(panel);
        }
        ptb.Visible  = true;
        send.Visible = true;
    }
        private void GenerarCampos(Table Ta, List <Campos> lstCampos)
        {
            int   num   = 0;
            Table child = new Table
            {
                ID = "TBL_PRICIPAL" + this.lstGrupos.SelectedValue,
                EnableViewState = true
            };

            this.pControls.Controls.Add(child);
            using (List <Campos> .Enumerator enumerator = lstCampos.GetEnumerator())
            {
                EventHandler handler = null;
                Campos       c;
                while (enumerator.MoveNext())
                {
                    RequiredFieldValidator   validator2;
                    ValidatorCalloutExtender extender3;
                    c = enumerator.Current;
                    TableRow row = new TableRow
                    {
                        ID = "Trow_" + c.CampId
                    };
                    TableCell cell = new TableCell
                    {
                        ID = "TcellDesc_" + c.CampId
                    };
                    TableCell cell2 = new TableCell
                    {
                        ID = "TcellCtrl_" + c.CampId
                    };
                    TableCell cell3 = new TableCell
                    {
                        ID = "TcellError_" + c.CampId
                    };
                    row.Cells.Add(cell);
                    row.Cells.Add(cell2);
                    row.Cells.Add(cell3);
                    child.Rows.Add(row);
                    switch (lstCampos[num].TcId)
                    {
                    case 1:
                    {
                        TextBox box = new TextBox
                        {
                            ID        = "txt_" + c.CampId,
                            Width     = c.CampAncho,
                            MaxLength = (int)c.LongMax
                        };
                        RoundedCornersExtender extender = new RoundedCornersExtender
                        {
                            TargetControlID = "txt_" + c.CampId.ToString(),
                            Radius          = 6,
                            ID      = "RoundedExtender_rtxt" + num.ToString(),
                            Corners = BoxCorners.All,
                            Enabled = true
                        };
                        RegularExpressionValidator validator = new RegularExpressionValidator
                        {
                            ID = "txtRegular" + c.CampId.ToString(),
                            ControlToValidate    = "txt_" + c.CampId.ToString(),
                            ValidationExpression = @"\d{0,15}",
                            ErrorMessage         = "<B><i>El campo debe ser numerico</i></B>",
                            Display = ValidatorDisplay.None
                        };
                        ValidatorCalloutExtender extender2 = new ValidatorCalloutExtender
                        {
                            TargetControlID = "txtRegular" + c.CampId.ToString(),
                            Enabled         = true,
                            PopupPosition   = ValidatorCalloutPosition.Right,
                            ID           = "vCallNum" + c.CampId.ToString(),
                            ClientIDMode = ClientIDMode.Inherit
                        };
                        row.Cells[0].Text = c.CampDescripcion + ": ";
                        row.Cells[1].Controls.Add(box);
                        row.Cells[1].Controls.Add(extender);
                        row.Cells[1].Controls.Add(validator);
                        row.Cells[1].Controls.Add(extender2);
                        if (c.CampObligatorio)
                        {
                            validator2 = new RequiredFieldValidator
                            {
                                ID = "txtReq" + c.CampId.ToString(),
                                ControlToValidate = "txt_" + c.CampId,
                                ErrorMessage      = "<B><i>Campo requerido</i></B>",
                                Display           = ValidatorDisplay.None,
                                SetFocusOnError   = true,
                                ForeColor         = Color.Red
                            };
                            extender3 = new ValidatorCalloutExtender
                            {
                                TargetControlID = "txtReq" + c.CampId.ToString(),
                                Enabled         = true,
                                PopupPosition   = ValidatorCalloutPosition.Right,
                                ID                = "vCall" + c.CampId.ToString(),
                                ClientIDMode      = ClientIDMode.Inherit,
                                HighlightCssClass = "highlight"
                            };
                            row.Cells[1].Controls.Add(validator2);
                            row.Cells[1].Controls.Add(extender3);
                        }
                        if (num == 0)
                        {
                            box.Focus();
                        }
                        break;
                    }

                    case 2:
                    {
                        TextBox box2 = new TextBox
                        {
                            ID        = "txt_" + c.CampId,
                            Width     = c.CampAncho,
                            MaxLength = (int)c.LongMax
                        };
                        RoundedCornersExtender extender4 = new RoundedCornersExtender
                        {
                            TargetControlID = "txt_" + c.CampId.ToString(),
                            Radius          = 6,
                            ID      = "RoundedExtender_rtxt" + num.ToString(),
                            Corners = BoxCorners.All,
                            Enabled = true
                        };
                        box2.CssClass     = "texto";
                        row.Cells[0].Text = c.CampDescripcion + ": ";
                        row.Cells[1].Controls.Add(box2);
                        row.Cells[1].Controls.Add(extender4);
                        if (c.CampObligatorio)
                        {
                            validator2 = new RequiredFieldValidator
                            {
                                ID = "txtReq" + c.CampId.ToString(),
                                ControlToValidate = "txt_" + c.CampId,
                                ErrorMessage      = "<B><i>Campo requerido</i></B>",
                                Display           = ValidatorDisplay.None,
                                SetFocusOnError   = true,
                                ForeColor         = Color.Red
                            };
                            extender3 = new ValidatorCalloutExtender
                            {
                                TargetControlID = "txtReq" + c.CampId.ToString(),
                                Enabled         = true,
                                PopupPosition   = ValidatorCalloutPosition.Right,
                                ID                = "vCall" + c.CampId.ToString(),
                                ClientIDMode      = ClientIDMode.Inherit,
                                HighlightCssClass = "highlight"
                            };
                            row.Cells[1].Controls.Add(validator2);
                            row.Cells[1].Controls.Add(extender3);
                        }
                        if (num == 0)
                        {
                            box2.Focus();
                        }
                        break;
                    }

                    case 3:
                    {
                        TextBox box3 = new TextBox
                        {
                            ID        = "txt_" + c.CampId,
                            Width     = c.CampAncho,
                            MaxLength = (int)c.LongMax
                        };
                        RoundedCornersExtender extender5 = new RoundedCornersExtender
                        {
                            TargetControlID = "txt_" + c.CampId.ToString(),
                            Radius          = 6,
                            ID      = "RoundedExtender_rtxt" + num.ToString(),
                            Corners = BoxCorners.All,
                            Enabled = true
                        };
                        MaskedEditExtender extender6 = new MaskedEditExtender
                        {
                            MaskType        = MaskedEditType.Date,
                            UserDateFormat  = MaskedEditUserDateFormat.MonthDayYear,
                            ID              = "Mext" + num.ToString(),
                            Mask            = "99/99/9999",
                            TargetControlID = "txt_" + c.CampId.ToString()
                        };
                        RangeValidator validator3 = new RangeValidator
                        {
                            ID                = "rangeV" + c.CampId.ToString(),
                            Type              = ValidationDataType.Date,
                            MinimumValue      = "01/01/1900",
                            MaximumValue      = string.Concat(DateTime.Now.Day.ToString("00"), "/", DateTime.Now.Month.ToString("00"), "/", DateTime.Now.Year),
                            ControlToValidate = "txt_" + c.CampId,
                            ErrorMessage      = "<B><i>El fomato de fecha es incorrecto</i></B>",
                            Display           = ValidatorDisplay.None
                        };
                        ValidatorCalloutExtender extender7 = new ValidatorCalloutExtender
                        {
                            TargetControlID = "rangeV" + c.CampId.ToString(),
                            Enabled         = true,
                            PopupPosition   = ValidatorCalloutPosition.Right,
                            ID                = "vCallFecha" + c.CampId.ToString(),
                            ClientIDMode      = ClientIDMode.Inherit,
                            HighlightCssClass = "highlight"
                        };
                        row.Cells[0].Text = c.CampDescripcion + ": ";
                        row.Cells[1].Controls.Add(box3);
                        row.Cells[1].Controls.Add(extender5);
                        row.Cells[1].Controls.Add(extender6);
                        row.Cells[1].Controls.Add(validator3);
                        row.Cells[1].Controls.Add(extender7);
                        if (c.CampObligatorio)
                        {
                            validator2 = new RequiredFieldValidator
                            {
                                ID = "txtReq" + c.CampId.ToString(),
                                ControlToValidate = "txt_" + c.CampId,
                                ErrorMessage      = "<B><i>Campo requerido</i></B>",
                                Display           = ValidatorDisplay.None,
                                SetFocusOnError   = true,
                                ForeColor         = Color.Red
                            };
                            extender3 = new ValidatorCalloutExtender
                            {
                                TargetControlID = "txtReq" + c.CampId.ToString(),
                                Enabled         = true,
                                PopupPosition   = ValidatorCalloutPosition.Right,
                                ID                = "vCall" + c.CampId.ToString(),
                                ClientIDMode      = ClientIDMode.Inherit,
                                HighlightCssClass = "highlight"
                            };
                            row.Cells[1].Controls.Add(validator2);
                            row.Cells[1].Controls.Add(extender3);
                        }
                        if (num == 0)
                        {
                            box3.Focus();
                        }
                        break;
                    }

                    case 4:
                    {
                        TextBox box4 = new TextBox
                        {
                            ID        = "txt_" + c.CampId,
                            Width     = c.CampAncho,
                            MaxLength = (int)c.LongMax
                        };
                        RoundedCornersExtender extender8 = new RoundedCornersExtender
                        {
                            TargetControlID = "txt_" + c.CampId.ToString(),
                            Radius          = 6,
                            ID      = "RoundedExtender_rtxt" + num.ToString(),
                            Corners = BoxCorners.All,
                            Enabled = true
                        };
                        row.Cells[0].Text = c.CampDescripcion + ": ";
                        row.Cells[1].Controls.Add(box4);
                        row.Cells[1].Controls.Add(extender8);
                        if (num == 0)
                        {
                            box4.Focus();
                        }
                        break;
                    }

                    case 5:
                    {
                        DropDownList lst = new DropDownList
                        {
                            ID = "lst_" + c.CampId.ToString(),
                            EnableViewState = true
                        };
                        RoundedCornersExtender extender9 = new RoundedCornersExtender
                        {
                            TargetControlID = "lst_" + c.CampId.ToString(),
                            Radius          = 6,
                            ID      = "RoundedExtender_Lst" + num.ToString(),
                            Corners = BoxCorners.All,
                            Enabled = true
                        };
                        ListSearchExtender extender10 = new ListSearchExtender
                        {
                            ID = "lsExtender" + c.CampId.ToString(),
                            TargetControlID = "lst_" + c.CampId.ToString(),
                            QueryPattern    = ListSearchQueryPattern.Contains,
                            PromptText      = "Digite el texto a buscar",
                            PromptPosition  = ListSearchPromptPosition.Top
                        };
                        Campos camp = new Campos
                        {
                            CampId = c.CampId
                        };
                        List <CodigosCampo> lstCods = this.bCampos.obtenerCodigosCampo(camp);
                        this.cargarListasCodigos(lst, lstCods);
                        row.Cells[0].Text = c.CampDescripcion + ": ";
                        row.Cells[1].Controls.Add(lst);
                        row.Cells[1].Controls.Add(extender9);
                        row.Cells[1].Controls.Add(extender10);
                        if (c.CampObligatorio)
                        {
                            validator2 = new RequiredFieldValidator
                            {
                                ID = "lstReq" + c.CampId.ToString(),
                                ControlToValidate = "lst_" + c.CampId.ToString(),
                                ErrorMessage      = "<B><i>Seleccione una opcion</i></B>",
                                Display           = ValidatorDisplay.None,
                                SetFocusOnError   = true,
                                InitialValue      = "0"
                            };
                            extender3 = new ValidatorCalloutExtender
                            {
                                TargetControlID = "lstReq" + c.CampId.ToString(),
                                Enabled         = true,
                                PopupPosition   = ValidatorCalloutPosition.Right,
                                ID                = "vCall" + c.CampId.ToString(),
                                ClientIDMode      = ClientIDMode.Inherit,
                                HighlightCssClass = "highlight"
                            };
                            row.Cells[1].Controls.Add(validator2);
                            row.Cells[1].Controls.Add(extender3);
                        }
                        if (num == 0)
                        {
                            lst.Focus();
                        }
                        break;
                    }

                    case 6:
                    {
                        DropDownList list3 = new DropDownList
                        {
                            EnableViewState = true,
                            ID           = "lst_" + c.CampId.ToString() + "_" + c.CampDependiente.ToString(),
                            AutoPostBack = true
                        };
                        RoundedCornersExtender extender11 = new RoundedCornersExtender
                        {
                            TargetControlID = "lst_" + c.CampId.ToString() + "_" + c.CampDependiente.ToString(),
                            Radius          = 6,
                            ID      = "RoundedExtender_Lst" + num.ToString(),
                            Corners = BoxCorners.All,
                            Enabled = true
                        };
                        ListSearchExtender extender12 = new ListSearchExtender
                        {
                            ID = "lsExtender" + c.CampId.ToString(),
                            TargetControlID = "lst_" + c.CampId.ToString() + "_" + c.CampDependiente.ToString(),
                            QueryPattern    = ListSearchQueryPattern.Contains,
                            PromptText      = "Digite el texto a buscar",
                            PromptPosition  = ListSearchPromptPosition.Top
                        };
                        List <P_Departamentos> list4 = this.bCampos.obtenerDepartamentos();
                        this.cargarDepartamentos(list3, list4);
                        row.Cells[0].Text = c.CampDescripcion + ": ";
                        if (c.CampDependiente > 0)
                        {
                            if (handler == null)
                            {
                                handler = (sender, args) => this.cargarCiudades(sender, args, c.CampDependiente.ToString());
                            }
                            list3.SelectedIndexChanged += handler;
                        }
                        row.Cells[1].Controls.Add(list3);
                        row.Cells[1].Controls.Add(extender11);
                        row.Cells[1].Controls.Add(extender12);
                        if (c.CampObligatorio)
                        {
                            validator2 = new RequiredFieldValidator
                            {
                                ID = "lstReq" + c.CampId.ToString(),
                                ControlToValidate = "lst_" + c.CampId.ToString() + "_" + c.CampDependiente.ToString(),
                                ErrorMessage      = "<B><i>Seleccione una opcion</i></B>",
                                Display           = ValidatorDisplay.None,
                                SetFocusOnError   = true,
                                InitialValue      = "0"
                            };
                            extender3 = new ValidatorCalloutExtender
                            {
                                TargetControlID = "lstReq" + c.CampId.ToString(),
                                Enabled         = true,
                                PopupPosition   = ValidatorCalloutPosition.Right,
                                ID                = "vCall" + c.CampId.ToString(),
                                ClientIDMode      = ClientIDMode.Inherit,
                                HighlightCssClass = "highlight"
                            };
                            row.Cells[1].Controls.Add(validator2);
                            row.Cells[1].Controls.Add(extender3);
                        }
                        if (num == 0)
                        {
                            list3.Focus();
                        }
                        break;
                    }

                    case 7:
                    {
                        DropDownList list5 = new DropDownList
                        {
                            EnableViewState = true,
                            ID = "lstCiu_" + c.CampId.ToString()
                        };
                        RoundedCornersExtender extender13 = new RoundedCornersExtender
                        {
                            TargetControlID = "lstCiu_" + c.CampId.ToString(),
                            Radius          = 6,
                            ID      = "RoundedExtender_Lst" + num.ToString(),
                            Corners = BoxCorners.All,
                            Enabled = true
                        };
                        ListSearchExtender extender14 = new ListSearchExtender
                        {
                            ID = "lsExtender" + c.CampId.ToString(),
                            TargetControlID = "lstCiu_" + c.CampId.ToString(),
                            QueryPattern    = ListSearchQueryPattern.Contains,
                            PromptText      = "Digite el texto a buscar",
                            PromptPosition  = ListSearchPromptPosition.Top
                        };
                        P_Departamentos d = new P_Departamentos
                        {
                            DeptId = 5
                        };
                        List <P_Ciudad> list6 = this.bCampos.obtenerCiudades(d);
                        row.Cells[0].Text = c.CampDescripcion + ": ";
                        row.Cells[1].Controls.Add(list5);
                        row.Cells[1].Controls.Add(extender13);
                        row.Cells[1].Controls.Add(extender14);
                        if (c.CampObligatorio)
                        {
                            validator2 = new RequiredFieldValidator
                            {
                                ID = "lstReq" + c.CampId.ToString(),
                                ControlToValidate = "lstCiu_" + c.CampId.ToString(),
                                ErrorMessage      = "<B><i>Seleccione una opcion</i></B>",
                                Display           = ValidatorDisplay.None,
                                SetFocusOnError   = true,
                                InitialValue      = "0"
                            };
                            extender3 = new ValidatorCalloutExtender
                            {
                                TargetControlID = "lstReq" + c.CampId.ToString(),
                                Enabled         = true,
                                PopupPosition   = ValidatorCalloutPosition.Right,
                                ID                = "vCall" + c.CampId.ToString(),
                                ClientIDMode      = ClientIDMode.Inherit,
                                HighlightCssClass = "highlight"
                            };
                            row.Cells[1].Controls.Add(validator2);
                            row.Cells[1].Controls.Add(extender3);
                        }
                        if (num == 0)
                        {
                            list5.Focus();
                        }
                        break;
                    }
                    }
                    num++;
                }
            }
        }