一、xaml中添加控件
<Image x:Name="shengbo" Source="F:/shengbo1.jpg" Height="203.333" Margin="0,801,-389.631,0" VerticalAlignment="Top" RenderTransformOrigin="-0.258,-0.065" Width="1004.6" HorizontalAlignment="Right"/>
以上代码可以初始化界面;
二、xaml.cs中
string shengboeDirectory;
shengboeDirectory = @"F:\shengbo2.jpg";
shengbo.Source = new BitmapImage(new Uri(shengboeDirectory));
以上代码可以用于在程序中改变图片;
分界线--------------------------------------------------------------------------------------------------------------------------------------------------------------------
补充:
如果需要使用相对路径,可以按照如下步骤操作:
1、在项目中添加一个文件夹,我习惯命名为Resources;
2、添加需要的图片到Resources中;
3、然后在C#代码中可以如下使用(xaml中类似);
string shengboeDirectory;
shengboeDirectory = @"Resource\shengbo2.jpg";
shengbo.Source = new BitmapImage(new Uri(shengboeDirectory, UriKind.Relative));
4、在图片的属性中设置生成操作(build action)为Resource,这是为了在编译时会把图片资源嵌入到程序中。否则的话,在程序生成之后依然会找不到图片。
------------------------------------------2020/02/24补充---------------------------------------------------
1、双击Resources.resx,添加图片,会自动生成Resources文件夹(目测不能嵌套文件夹);
2、修改图片属性;
------------------------------------------------分界线-------------------------------------------------------
--------------------------------2020/2/17补充-------------------------------------------------------------
通过后台代码改变前台的显示时,因为是位于不同线程的代码,不能直接修改,可以通过以下代码来解决:
(放在前台对应的后台代码中)
private void timeChangeWave(string waveName)
{
this.Dispatcher.Invoke(new Action(delegate
{
shengbo.Source = new BitmapImage(new Uri(waveName,UriKind.Relative));
}));
}