Hola voy comenzando a conocer la programacion de C# en especifico WPF, estoy desarrollando una aplicacion en la cual debo de guardar imagenes en la base de datos (Access 2007). Las imagenes las he metido manualmente en un campo de tipo Dato Adjunto, tambien lo pude haber hecho como tipo Objeto Ole, pero mi problema ahorita es como le debo de hacer para desplegar la imagen en mi control IMAGE. El codigo que utilizo es el siguiente:
en el codigo xaml creo el control
<Image Name="ImgMedidor" Width="600" Height="470" Grid.Row="3" Grid.ColumnSpan="4" Margin="0,5,0,125" />
y en el codigo detras hago esto
//Creo la consulta para mostrar la imagen aleatoria
consulta = "SELECT * FROM Medidor WHERE [Id] = " + numero;
try
{
//Objeto conexion
using (OleDbConnection conexion = new OleDbConnection(cadena))
{
OleDbCommand command = new OleDbCommand(consulta, conexion);
//Abro la conexion
conexion.Open();
OleDbDataReader reader = command.ExecuteReader();
if (reader.Read())
{
this.ImgMedidor.Source = byteArrayToImage((byte[])reader["medidor"]); // aqui me dice No se puede convertir implícitamente el tipo 'System.Windows.Controls.Image' en 'System.Windows.Media.ImageSource'
}
Este es el metodo pero no me funciona
public Image byteArrayToImage(byte[] byteArrayIn)
{
MemoryStream ms = new MemoryStream(byteArrayIn);
Image returnImage = Image.FromStream(ms); //aqui me dice 'System.Windows.Controls.Image' no contiene una definición para 'FromStream' ya intente poner en los using System.Drawing pero no me lo reconoce.
return returnImage;
}
Necesito ayuda por favor puesto que el tiempo se me acaba
Muchas gracias!