2009-08-06 17 views
7

Estoy tratando de recrear un ejemplo muy simple de un proyecto de C# i WPF, es un simple visor de imágenes ... de la autoaprendizaje de sam C#, he logrado abrir el cuadro de diálogo de abrir archivo, pero ¿cómo hacerlo? configuro la ruta de la imagen al control image.source en WPF?Fuente de control de imagen WPF

private void SearchBtn_Click(object sender, RoutedEventArgs e) 
{ 
    Microsoft.Win32.OpenFileDialog openfile = new Microsoft.Win32.OpenFileDialog(); 
    openfile.DefaultExt = "*.jpg"; 
    openfile.Filter = "Image Files|*.jpg"; 
    Nullable<bool> result = openfile.ShowDialog(); 
    if (result == true) 
    { 
     //imagebox.Source = openfile.FileName; 
    } 
} 

Respuesta

18
imagebox.Source = new BitmapImage(new Uri(openfile.FileName)); 
+0

Gracias, cómo configurar el doyou propertie Sizemode.zoom? – Dabiddo

+0

¡Trabajó para mí también! gracias – Azeem

+0

gracias. Trabajó para mi –

3

tendrá que cambiar el nombre del archivo en un URI y luego crear un BitmapImage

:

if (File.Exists(openfile.FileName)) 
{ 
// Create image element to set as icon on the menu element 
BitmapImage bmImage = new BitmapImage(); 
bmImage.BeginInit(); 
bmImage.UriSource = new Uri(openfile.FileName, UriKind.Absolute); 
bmImage.EndInit(); 
// imagebox.Source = bmImage; 
} 
2

También puede agregar la imagen como un recurso, es decir, Agregue el elemento existente y cambie la propiedad Acción de compilación de la imagen al Recurso

y luego refiérase de esta manera

BitmapImage bitImg = new BitmapImage(); 
bitImg.BeginInit(); 
bitImg.UriSource = new Uri("./Resource/Images/Bar1.png", UriKind.Relative); 
bitImg.EndInit(); 

((Image)sender).Source = bitImg; 

De esta manera usted no necesita incluir la imagen con el programa, sus agrupados en el paquete como un recurso

Cuestiones relacionadas