[ Foro de C# ]
Hola que tal soy nuevo en este foro, tengo un problema con una simple base de datos de sql , el problema es que me muestra toda la tabla pero cuando quiero que se actualice al seleccionar un contacto no me muestra la imagen en el picturebox , os dejo el codigo , (lo que quiero es que al seleccionar un contacto de la tabla en el form de C# muestre no solo lo escrito sino tambien la foto de la en el picturebox) eh intentado miles de formas pero no se en que me equivocado o si e configurado algo mal, desde ya gracias y saludos
este es el metodo para llamarlo:
public Image Actualizarimagen()
{
byte[] Mydata = new byte[0];
if (dtgbContactos.CurrentRow.Cells["Foto"].Value != null)
{
//capturamos la imagen
Mydata = (byte[])dtgbContactos.CurrentRow.Cells["Foto"].Value;
MemoryStream mst = new MemoryStream(Mydata);
return Image.FromStream(mst);
}
else
return null;
y aca para cuando seleccione algun contacto me lo muestre en los txtbox y la foto en el picture:
private void dtgbContactos_SelectionChanged(object sender, EventArgs e)
{
//SelectedRows obtiene la coleccion de filas seleccionadas por el usuario
if (dtgbContactos.SelectedRows.Count > 0) // si es mayor a cero significa que hay datos
{
//CurrentRow obtiene la fila de la celda //cells obtiene la coleccion de celdas que
//rellenan las filas
txtID.Text = dtgbContactos.CurrentRow.Cells["IdContacto"].Value.ToString();
txtNombre.Text = dtgbContactos.CurrentRow.Cells["Nombre"].Value.ToString();
txtApellido.Text = dtgbContactos.CurrentRow.Cells["Apellido"].Value.ToString();
txtEdad.Text = dtgbContactos.CurrentRow.Cells["Edad"].Value.ToString();
txtDireccion.Text = dtgbContactos.CurrentRow.Cells["Direccion"].Value.ToString();
txtBarrio.Text = dtgbContactos.CurrentRow.Cells["Barrio"].Value.ToString();
txtTelefono.Text = dtgbContactos.CurrentRow.Cells["Telefono"].Value.ToString();
txtOcupacion.Text = dtgbContactos.CurrentRow.Cells["Ocupacion"].Value.ToString();
ptbFoto.Image = Actualizarimagen(); //aqui es donde llame al metodo
}
(No se puede continuar esta discusión porque tiene más de dos meses de antigüedad. Si tienes dudas parecidas, abre un nuevo hilo.)