C# 在WPF页面上显示图像
我试图在WPF页面上显示图像。代码如下所示:C# 在WPF页面上显示图像,c#,wpf,C#,Wpf,我试图在WPF页面上显示图像。代码如下所示: <Grid> <TextBlock Margin="32,332,395,74" Cursor="None"> Click to <Hyperlink NavigateUri="TestWindow.xaml">sign a document</Hyperlink> </TextBlock> <Image HorizontalAlignment="Left" He
<Grid>
<TextBlock Margin="32,332,395,74" Cursor="None">
Click to <Hyperlink NavigateUri="TestWindow.xaml">sign a document</Hyperlink>
</TextBlock>
<Image HorizontalAlignment="Left" Height="151" Margin="32,96,0,0" VerticalAlignment="Top" Width="179"
Source="signature.png" Visibility="Visible" Name="signImage"/>
单击以签署文档
问题是图像显示在WPF设计器中,但当我运行程序时,图像不会显示在页面上
请注意,图像显示在页面而不是窗口上
Image finalImage = new Image();
finalImage.Width = 80;
...
BitmapImage logo = new BitmapImage();
logo.BeginInit();
logo.UriSource = new Uri("pack://application:,,,/AssemblyName;component/Resources/logo.png");
logo.EndInit();
...
finalImage.Source = logo;
URI分为以下几个部分:
- 权限:
应用程序://
- AssemblyShortName:引用程序集的短名称
- );版本[可选]:所引用程序集的版本 包含资源文件。当引用两个或多个时使用此选项 将加载具有相同短名称的程序集
- );PublicKey[可选]:用于签名的公钥 引用的程序集。当引用两个或多个时使用此选项 将加载具有相同短名称的程序集
- );component:指定引用的程序集为 从本地程序集引用
- /路径:资源文件的名称,包括其路径,相对于 引用程序集的项目文件夹的根
当然,请确保将映像上的构建操作设置为Resource。另一个选项是使用资源,例如在应用程序中。xaml:
<Application.Resources>
<BitmapImage x:Key="signatureSrc" UriSource="/MyProject;component/ImageFolderIfThereIsOne/signature.png" />
</Application.Resources>
像这样使用它
<Image Height="100" VerticalAlignment="Top" Width="100" Source="{StaticResource signatureSrc}" />
我自己对此感到失望,我刚刚发现页面使用了图像的相对位置。在我的例子中,图像位于文件夹“Graphics/logo.jpg”中,页面位于文件夹“View/Setting/About”中。我已将图像源更新为。/../Graphics/logo.jpg
,并成功运行。您的图像是上载到您的网站,还是仅上载到您正在设计它的计算机上?在我的计算机上。该应用程序是桌面应用程序该图像实际上是项目的一部分(列在解决方案资源管理器中)?是否为项目中的signature.png文件指定了“复制到输出目录”?是的,仍然不起作用