silverlight中显示一个图片有很多的中方法,xaml中的image控件或者自定编写程序来生成image控件。

silverlight中显示的图片只能是Bitmap, JPG, PNG(64位颜色的或者灰色的PNG不支持). 请注意那个gif这个动画图片是不能使用的。

下面就一一的说说显示图片的方法。

(1) 我们拷贝一个图片到新建的silverlight程序集中,然后新建一个silverlight user control, 名为ImagePage.xaml。然后添加一个Image控件到Grid中,然后设置Source,Source="imag1.jpg" ,然后运行web程序就可以看到这个图片。

(2) 第一种方法中图片跟xaml文件是在同一个层次上的,但是正式项目中是用一个Image文件夹来存放所有到的图片的。这个时候,定义Images文件夹来存放图片文件,拷贝iamge2.jpg文件到Images文件夹中,然后Image 控件的Source,Source="Images/image2.jpg" ,然后运行web程序可以看到这个图片。

(3) 在上面的拷贝的图片文件,都是通过在xaml文件中添加控件设置Source来设置的。也可以通过程序来访问。程序如下:

 public partial class ImagePage : UserControl
{
public ImagePage()
{
InitializeComponent();
Image image = new Image();
ImageSource imageSource=new BitmapImage(new Uri("image1.jpg",UriKind.RelativeOrAbsolute));
image.Source = imageSource;
this.LayoutRoot.Children.Add(image);
}
}

请注意,那个UriKind这个枚举,一定要设置为RelativeOrAbsolute,设置为其他的Relative 或者是 Absolute 都是不行的。

(4)  点击image1.jpg这个图片,右击属性,然后我们修改属性Build Action=Content,然后我们调用的时候Source="/image1.jpg", 然后打开那个web程序也是可以看到效果的。

(5) 把那个image1.jpg文件放到web程序下的clientbin文件夹下,然后那个ImagePage.xaml文件中的Source="image1.jpg" 或者 Source="/image1.jpg"都是可以正确的访问到的。

(6) 当然也可以通过http://这个形式访问网络上的图片。

补充一种SteamResourceInfo的方法。

具体的见代码如下:

首先放置一张图片到silverlight项目的根目录下:

然后在mainpage.xaml 的构造函数中写入代码:

StreamResourceInfo sri = Application.GetResourceStream(new Uri("SilverlightApplication3;component/m.jpg", UriKind.Relative));

             BitmapImage bi = new BitmapImage();
bi.SetSource(sri.Stream);
img1.Source = bi;

img1是Image控件。

当然图片放在项目的根目录下,不太方便管理。可以在Silverlight项目新建Images文件夹专门存放图片,然后把m.jpg放到Images文件夹中,然后

StreamResourceInfo sri = Application.GetResourceStream(new Uri("SilverlightApplication3;component/Images/m.jpg", UriKind.Relative));

就可以显示出正确的图片。

Silverlight中图片显示的更多相关文章

  1. Android ListView滑动过程中图片显示重复错乱闪烁问题解决

    最新内容建议直接访问原文:Android ListView滑动过程中图片显示重复错乱闪烁问题解决 主要分析Android ListView滚动过程中图片显示重复.错乱.闪烁的原因及解决方法,顺带提及L ...

  2. Silverlight 中图片路径的设置

    在Silverlight中图片的设置方法有几种 如上图在一个工程中有个images文件夹,buttons.xaml页面中的Image控件要引用一张图片 第一种方法 xaml: <Image x: ...

  3. AndroidListview 滑动过程中图片显示重复错乱解决方案

    主要分析Android中Listview滚动过程造成的图片显示重复.错乱.闪烁的原因及解决方法,顺便跟进Listview的缓存机制. 1.原因分析 Listview item 缓存机制:为了使得性能更 ...

  4. matlab保存图片成eps格式不全,导致latex中图片显示不全的问题

    我们经常会遇到这样的问题.用将matlab生成的图保存EPS格式后,用GSVIEW打开后,可以看到图片显示不全.遇到这种情况是,我们可以使用dvipdf——dvips的方法来生成PDF,这样生成的pd ...

  5. [转]ionic或者angularjs中图片显示压缩问题解决 or 显示较大图片的某一块区域、裁剪显示

    我们知道在html中显示图片一般都是用img控件标签,当然调整大小的也很容易. 但是会出现,特定的img大小,显示一张比较大尺寸的且长宽比例与特定img大小不相符的图片.而导致压缩问题,图片挤压的很严 ...

  6. 解决Windows照片查看器中图片显示发黄的问题

    这其实是ICC颜色配置的问题,发生在Windows7自动更新下载了显示器的驱动后,自动安装后显示器的颜色配额制文件自动改为新下载的配置,导致显卡和显示器颜色配置不兼容的问题,不过不用担心,非常容易解决 ...

  7. jquery 中dataTable显示加载中,图片或文字

    引入js文件 <script type="text/javascript" src="${basePath}/lib/datatables/1.10.0/jquer ...

  8. Silverlight中的拖拽实现的图片上传

    原文 http://blog.csdn.net/dujingjing1230/article/details/5443003 在Silverlight中因为可以直接从系统的文件夹里面拖出来一个文件直接 ...

  9. 关于在Silverlight中添加图片的问题

    在Silverlight中添加图片,目前支持的Image格式有jpg和png两种,如何在目录中添加,有些什么技巧呢? <StackPanel Background="White&quo ...

随机推荐

  1. linux cp 和scp详解

    linux之cp/scp命令+scp命令详解   名称:cp 使用权限:所有使用者 使用方式: cp [options] source dest cp [options] source... dire ...

  2. mysqldump 导出数据库各参数详细说明

    mysqldump是mysql用于转存储数据库的实用程序.它主要产生一个SQL脚本,其中包含从头重新创建数据库所必需的命令CREATE TABLE INSERT等. 下面我们详细介绍一下mysqldu ...

  3. mysql主备配置

    目录 mysql主备2 一.master配置:2 1. 修改配置文件 2 2. 登录添加账号并赋权限 2 3. 查看master信息 2 二.slave配置:2 1. 修改配置文件 2 2. 重启登录 ...

  4. Android开发之利用ViewPager实现页面的切换(仿微信、QQ)

    这里利用ViewPager实现页面的滑动,下面直接上代码: 1.首先写一个Activity,然后将要滑动的Fragment镶嵌到写好的Activity中. Activity的布局文件:activity ...

  5. 5C - A == B ?

    Give you two numbers A and B, if A is equal to B, you should print "YES", or print "N ...

  6. dpdk中文文档

    Linux平台上DPDK入门指南 1. 简介 1.1. 文档地图 2. 系统要求 2.1. X86 上预先设置 BIOS 2.2. 编译DPDK 2.3. 运行DPDK应用程序 3. 使用源码编译DP ...

  7. Maximum Swap LT670

    Given a non-negative integer, you could swap two digits at most once to get the maximum valued numbe ...

  8. 开发apicloud模块遇到的几个梗

    2017-06-04 原来模块中不能的R.id.xxx,只能用UZResourcesIDFinder.getResIdID("mo_minivr_framecontainer") ...

  9. 【UI测试】--菜单位置

  10. DataTable xml 互相转换

    //测试方法 public static DataTable Test() { string savePath = System.AppDomain.CurrentDomain.BaseDirecto ...