Creo que en el anterior Post no me explique bien, asi que voy a explicarme detenidamente que es lo que estoy intentando hacer...
Quiero crear una clase, que pasandole un Objeto del tipo Object por referencia, me lo convierte al tipo de Control que le solicite en otro parametro. Para ello, la case conversora tiene una funcion que es algo como:
Código:
Y para crear el control hago lo siguiente:public bool CreaControl(int Ancho, int Alto, string Nombre, string Texto, TipoControl Tipo, string Estilo, ref Object MiControl) { switch (Tipo) { case TipoControl.WebBoton: MiControl = new Button(); MiControl.ID = Nombre; MiControl.Text = Texto; MiControl.Value = Texto; MiControl.Width = Ancho; MiControl.Height = Alto; MiControl.Style = Estilo; break; } }
Código:
Sin embargo, al compilar, me da un error en la clase diciendome que Object no dispone de esos métodos.... pero si es Object, debería aceptarlos, ¿Verdad?private object objControl; private System.Web.UI.Control objFormulario; private CreaControles objCreador; objFormulario = this.FindControl("Form1"); objCreador = new CreaControles(); if (objCreador.CreaControl(100, 30, "idBoton", "Un Boton", CreaControles.TipoControl.HtmlBoton, "", ref objControl)) { objFormulario.Controls.Add(objControl); }
En fin, haber si alguien me puede ayudar con esta "clasecilla" que se está volviendo en "Cabroncilla".
Un saludo muy fuerte para toos.