none
Generación Dinámica de Imágenes RRS feed

  • Pregunta

  • Hola comunidad!

    Me preguntaba, como sería posible generar imágenes dinámicamente. En el poyecto web tengo una carpeta con imágenes. Las rutas de cada una de estas imágenes están de parte del servidor y esas mismas rutas están almacenadas en la BD. Como he creado labels también dinámicos, deseo por medio de un Tooltip insertar una respectiva imágen (hice un ejemplo con el tooltip con imágen, funciona correctamente por medio de CSS's, pero de manera estática). La conexión está bien y crea el contenido del proyecto en el body a partir de los campos de la BD. No obstante, el código me está trayendo como caractér o cadena string la ruta de la imágen. La cuestión sería que mostrase la imágen como tal. Me explico mejor:

    private void GenerarRadioButton()
            {
                try
                {
                    string sConnectionString;
                    sConnectionString = @"DATA SOURCE=PMICOMEDW00090; Initial Catalog='PRUEBA PARA CONTROLES DINAMICOS'; Integrated Security=SSPI;";
                    SqlConnection objConn = new SqlConnection(sConnectionString);
                    objConn.Open();
    
                    SqlDataAdapter objSqlDataAdapter = new SqlDataAdapter("EXEC [USP EJEMPLO]", objConn);
                    DataSet objDataSet = new DataSet("Tabla");
                    objSqlDataAdapter.FillSchema(objDataSet, SchemaType.Source, "TBL MARCAS");
                    objSqlDataAdapter.Fill(objDataSet, "TBL MARCAS");
    
                    DataTable objDataTable;
                    objDataTable = objDataSet.Tables["TBL MARCAS"];
    
                    int i = 0;
                    Funcion.InnerText = "Seleccione las opciones de trabajo";
                    pmi.InnerText = "PMI";
    
                    foreach (DataRow drCurrent in objDataTable.Rows)
                    {
                        //Se inicia la creación de un nuevo objeto Web (una etiqueta DIV).
                        HtmlGenericControl createDiv = new HtmlGenericControl("div");
                        //Sele da un ID.
                        createDiv.ID = "divA" + i;
                        //Se le dan estilos.
                            //Flotar a la izquierda
                        createDiv.Style.Add("float", "left");
                        createDiv.Style.Add("padding", "2%");
    
                        //Se crea el 'Label' que irá dentro del 'div' el cual contiene el nombre de la marca.
                        System.Web.UI.WebControls.Label lbl = new System.Web.UI.WebControls.Label();
                        lbl.Text = drCurrent["ABREVIATURA"].ToString();
                        
                        //Se crea el 'RadioButtonList' que irá dentro del 'div'
                        RBL = new RadioButtonList();
                        RBL.ID = "RadioButtonList" + i.ToString(); ;
                        RBL.RepeatDirection = RepeatDirection.Horizontal;
                        RBL.Items.Add("Si");
                        RBL.Items.Add("No");
                        RBL.Items[0].Selected = false;
                        RBL.ToolTip = drCurrent["IMAGEN"].ToString();
    
                        //Se inserta el 'Label' en el 'div'
                        createDiv.Controls.Add(lbl);
                        //Se inserta el 'RadioButtonList' en el 'div'
                        createDiv.Controls.Add(RBL);
                       
                        //Se agrega el nuevo 'div' al 'div' contenedor.
                        ContenedorGeneralDeRBL.Controls.Add(createDiv);
                        //Se incrementa 'i' para que complemente el nombre de otro control.
                        
    
                        i += 1;
                    }
                }
                catch (Exception )
                {
                }
    }

    El campo IMAGEN contiene la ruta de la imágen. Y se le está asignando como tooltip a una pareja de radio botones.

    Espero que me puedan ayudar. Gracias por su pronta ayuda y dedicación.

    Y así llamo lo que he generado en el código C# en el HTML:

    <div class="row">
                            <div>
                                <h1 id="Funcion" runat="server" class="icon-gears"></h1>
                                <br /><br />
                                <h2 id="pmi" runat="server"></h2>
                                <div runat="server" id="ContenedorGeneralDeRBL"></div>
                                <br />
                            </div>
                        </div>

    jueves, 27 de marzo de 2014 16:50