zoukankan      html  css  js  c++  java
  • Silverlight中图片显示

    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来设置的。也可以通过程序来访问。程序如下:

     1 public partial class ImagePage : UserControl
     2     {
     3         public ImagePage()
     4         {
     5             InitializeComponent();
     6             Image image = new Image();
     7             ImageSource imageSource=new BitmapImage(new Uri("image1.jpg",UriKind.RelativeOrAbsolute));
     8             image.Source = imageSource;
     9             this.LayoutRoot.Children.Add(image);
    10         }
    11     } 

     请注意,那个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));

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

    img1是Image控件。

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

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

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

  • 相关阅读:
    day_15补充加总结
    Day_15 内置模块er
    sort 函数 与 sorted 函数区别
    python 代码风格------------PEP8规则
    python 返回值
    函数记忆 : startswith() 与 endswith
    RE模块使用
    正则表达式
    collections
    函数datetime
  • 原文地址:https://www.cnblogs.com/qiernonstop/p/3725716.html
Copyright © 2011-2022 走看看