Ver Mensaje Individual
  #3 (permalink)  
Antiguo 22/08/2007, 20:01
Avatar de jhonwilliams
jhonwilliams
 
Fecha de Ingreso: marzo-2004
Ubicación: Copacabana - Colombia
Mensajes: 1.484
Antigüedad: 20 años, 2 meses
Puntos: 76
Re: Pasar Codigo VB a C#

Hola.

Ocurre esto, mi dataset queda con estos datos (vistos en el Dataset Visualizer)
ID Descripcion Imagen
1 Imagen 1 System.Byte[]
2 Imagen 2 System.Byte[]
3 Imagen 3 System.Byte[]

Y el codigo es este:

Load:
Código:
private void Form1_Load(object sender, EventArgs e)
        {
            rptReporte rpt = new rptReporte();
            DataSet mids = RetornarDataSet();
            rpt.SetDataSource(mids.Tables[0]);

            crystalReportViewer1.ReportSource = rpt;

        }
Código:
 public static byte[] tomaBytes(string archivin)
        {
            FileStream obtenArchivo = new FileStream(archivin, FileMode.Open);
            BinaryReader br = new BinaryReader(obtenArchivo);
            byte[] imagenBytes = new byte[(int)obtenArchivo.Length];
            // int valor = imagenBytes .Length;
            br.Read(imagenBytes, 0, (int)obtenArchivo.Length);
            br.Close();
            obtenArchivo.Close();
            return imagenBytes;
        }

        DataSet RetornarDataSet()
        {
            DataRow dr;// = new DataRow();
            DataTable dt = new DataTable();
            DataSet ds = new DataSet();

            dt.Columns.Add("Codigo", System.Type.GetType("System.String"));
            dt.Columns.Add("Descripcion", System.Type.GetType("System.String"));
            dt.Columns.Add("Imagen", System.Type.GetType("System.Byte[]"));

            dr = dt.NewRow();
            dr["Codigo"] = 1;
            dr["Descripcion"] = "Imagen 1";
            dr["Imagen"] = tomaBytes(Application.StartupPath + @"\Imagen1.jpg");
            dt.Rows.Add(dr);

            dr = dt.NewRow();
            dr["Codigo"] = 2;
            dr["Descripcion"] = "Imagen 2";
            dr["Imagen"] = tomaBytes(Application.StartupPath + @"\Imagen2.jpg");
            dt.Rows.Add(dr);

            dr = dt.NewRow();
            dr["Codigo"] = 3;
            dr["Descripcion"] = "Imagen 3";
            dr["Imagen"] = tomaBytes(Application.StartupPath + @"\Imagen3.jpg");
            dt.Rows.Add(dr);

            ds.Tables.Add(dt);
            ds.Tables[0].TableName = "Imagenes";
            
            return ds;
        }
El problema es que veo la misma imagen repetidar tres veces y los campos ID y Descripcion no se visualizan en el reporte.

Gracias
__________________
Si mi respuesta te ha ayudado, agradezco que me regales unos puntos de Karma XD.

"Una mujer sería encantadora si uno pudiera caer en sus brazos sin caer en sus manos." (Ambrose Bierce)