Ver Mensaje Individual
  #2 (permalink)  
Antiguo 18/04/2004, 04:31
Avatar de SunDarK
SunDarK
 
Fecha de Ingreso: diciembre-2003
Ubicación: Jerez de la Frontera
Mensajes: 1.193
Antigüedad: 20 años, 5 meses
Puntos: 8
Yo te puedo pasar código para meter imagenes en una BD,pero luego para mostrarlo en alguno de esos controles no he probado nunca,yo lo he probado en un control Image.
Aunque como ya se ha dicho por aqui no es conveniente almacenar la imagen en la BD,por cuestiones de espacio y rendimiento,lo suyo seria almacenar en la BD la ruta a la imagen(por ejemplo "/tuweb/imagenes/foto1.jpg") asi ganaras en rendimiento.
Por si acaso aqui te pongo el codigo para almacenar imagenes en la BD
Cita:
El campo será de tipo Image
'El OpenFileDialog1 lo he puesto para que el usuario pueda elegir la imagen que quiere subir

Dim fs As New FileStream(OpenFileDialog1.FileName, FileMode.OpenOrCreate, FileAccess.Read)
Dim MyData(fs.Length) As Byte
fs.Read(MyData, 0, fs.Length)
fs.Close()

'Ahora creas la fila nueva en el dataset y para introducir la foto pones

filanueva("FOTO") = MyData

'Y luego para mostrarla

foto.Image = Mostrarfoto(1) 'Por ejemplo

Public Function Mostrarfoto(ByVal id As Integer) As Image
Try
Dim cn As New SqlConnection("Server=xxxxx;Database=xxxxx;uid=xxx xxx;pwd=xxxxx")
cn.Open()
'Retrieve BLOB from database into DataSet.
Dim cmd As New SqlCommand("SELECT foto FROM Tabla WHERE ID=" & id, cn)
Dim da As New SqlDataAdapter(cmd)
Dim ds As New DataSet
da.Fill(ds, "Tabla")
Dim c As Integer = ds.Tables("Tabla").Rows.Count
If c > 0 Then
'BLOB is read into Byte array, then used to construct MemoryStream,
'then passed to PictureBox.
Dim byteBLOBData(-1) As [Byte]
byteBLOBData = CType(ds.Tables("Tabla").Rows((c - 1))("FOTO"), [Byte]())
Dim stmBLOBData As New MemoryStream(byteBLOBData)
Mostrarfoto = Image.FromStream(stmBLOBData)
End If
cn.Close()
Catch ex As Exception
MessageBox.Show(ex.Message)
End Try
End Function
La funcion mostrar foto lo que hace es eso,le pasas un ID se conecta a la BD y elige la foto de acuerdo al ID que se le ha pasado como parametro.
Espero que te sea de ayuda,para cualquier duda me la comentas y lo solucionamos,saludos

Última edición por SunDarK; 18/04/2004 a las 04:35