Ora bem, nos próximos tempos vou colocar por aqui resoluções de questões com código para uma aplicação que está a ser desenvolvida em WPF/C#. Umas coisas simples, a maioria com a ajuda preciosa do Google...
Para abrir, uma muito chata: colocar uma imagem!
A maneira normal, em modo visual, é colocando um controlo de imagem, e depois na propriedade "source", escolher a imagem pretendida.
No entanto, temos pouco controlo sobre o que está a ser feito. Sendo assim, era necessário conseguir ser eu a especificar por código a imagem a ser apresentada, em vez de usar a tab das propriedades.
Aplicação com o nome "WpfApplication1", contém uma pasta para as imagens com o nome "Imgs".
A solução que encontrei foi:
XAML:
< image source="/WpfApplication1;component/Imgs/file.png" />
ou
< image.source>
< bitmapimage urisource="/Imgs/file.png" />
< /image.source>
No caso de querer colocar este carregamento a ser feito programaticamente (no C# em vez do XAML). No XAML, coloquei um objecto imagem com x:Name="image2":
Versão com o caminho completo, não interessa muito.
Uri src = new Uri(@"T:/Documents/Visual Studio 2008/Projects/WpfApplication1/Imgs/file.png");
BitmapImage img = new BitmapImage(src);
image2.Source = img;
Caminho absolute.
BitmapImage bmi = new BitmapImage(new Uri("pack://application:,,,/Imgs/file.png", UriKind.Absolute));
image2.Source = bmi;
Caminho relative.
BitmapImage bmi = new BitmapImage(new Uri("/Imgs/icons/file.png", UriKind.Relative));
image2.Source = bmi;
As imagens necessitam de ter o seu "Build Action" como "Resource".
24 setembro 2009
Subscrever:
Enviar feedback (Atom)
Sem comentários:
Enviar um comentário