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. Spring配置文件XML详解

    1.bean的基本属性配置: <!-- id是bean的标识符,必须唯一,如果没有配置id,name默认为标识符 如果配置了id,有配置了name,那么name为别名 name可以设置多个别名, ...

  2. stark组件开发之列表页面预留钩子方法。 可根据用户的不同,显示不同的列

    要实现,这个方法.子类中 list_diplay 这个列表, 就不能够写死.他应该是 可以根据.用户的不同,返回不同的值. 所以 就需要一个函数, 可以进行判断当前用户是谁. 并且往这个列表中添加,他 ...

  3. spirng中的asm与jdk不兼容<已解决>

    转载自:spirng中的asm与jdk不兼容<已解决> 前言 不知道前面对eclipse做了什么,使用maven来创建项目,然后转成web,启动的时候一直报错.我弄了好久,还是无法解决,先 ...

  4. windows2003服务器,时间每隔1小时自动同步一次

    有台服务器的时间总是不对,可能是电池快没电了吧,于是想让它时间保持更新状态,但又不想用第三方软件,在百度上查了一下,还真有方法 HKEY_LOCAL_MACHINE->SYSTEM->Cu ...

  5. Ubuntu 软件包管理工具 dpkg, APT 的一些命令(转载)

    转载地址: http://www.dreamxu.com/ubuntu-package-dpkg-and-apt-commands/ dpkg dpkg 是由 Debian 开发的包管理系统,是一个比 ...

  6. Iperf使用方法与参数说明

      Iperf使用方法与参数说明 http://pkgs.repoforge.org/iperf/ Iperf是一个网络性能测试工具.可以测试TCP和UDP带宽质量,可以测量最大TCP带宽,具有多种参 ...

  7. ROC曲线 Receiver Operating Characteristic

    ROC曲线与AUC值   本文根据以下文章整理而成,链接: (1)http://blog.csdn.net/ice110956/article/details/20288239 (2)http://b ...

  8. 05. pt-diskstats

    pt-diskstats --devices-regex=sda --interval=1 --iterations=3 --show-timestamps #ts device rd_s rd_av ...

  9. Ubuntu几种常见乱码解决方法

    一.网页中的flash乱码:        ubuntu默认浏览器是Firefox,但是Ubuntu默认不安装像flash这种带版权的软件,所以当你浏览像youku或网页播放器时,这种带有 flash ...

  10. ubuntu12.04下安装Apache+PHP+MySQL

    一.Apache1.安装apache2: sudo apt-get install apache2 2.重启apache2: sudo /etc/init.d/apache2 restart 3.在浏 ...