微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

在Silverlight中如何获取图片的宽高

这几天又收集几个比较有用的Silverlight函数在这里共享给大家~

这次先给大家说说如何获取image的宽高~

首先我们在同步image控件的时候经常要使用一个bitmapimage对象(System.Windows.Media.Imaging;)

我们可以同步他的下载进度 当他完全下载成功后我们便可以开始获取图片的大小了.

还是先给大家share一下代码吧~

 

很显然我们要向canvas中添加一个image

 
 
  1. <UserControl x:Class="Images_Dimensions_Silverlight.Page" 
  2.     xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"  
  3.     xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"  
  4.     Width="400" Height="300"
  5.     <Grid x:Name="LayoutRoot" Background="White"
  6.         <ContentControl x:Name="MyContent"
  7.             <Canvas x:Name="GameCanvas" ></Canvas> 
  8.         </ContentControl> 
  9.     </Grid> 
  10. </UserControl> 
接下来我们要怎么做呢?

1.创建一个image对象

2.绑定数据源

3.添加到canvas里面去

步骤下面我们来看看代码如何实现

 
 
  1. private void LoadImage(string path) 
  2.         { 
  3.             Uri uri = new Uri(path, UriKind.Relative); 
  4.             BitmapImage bitmapImage = new BitmapImage(); 
  5.             bitmapImage.UriSource = uri; 
  6.             grass = new Image(); 
  7.             grass.source = bitmapImage; 
  8.             GameCanvas.Children.Add(grass); 
  9.         } 

这个过程大家可能已经是在熟悉不过了,我们只需要在对他稍加修改使用bitmapimage的DownloadProgress事件

bitmapImage.DownloadProgress  +=   new  EventHandler < DownloadProgressEventArgs > (bitmapImage_DownloadProgress);

 下面我们看看我们如何处理这个事件的

 
 
  1.  

呵呵~ 又是一个简单的demo 相信对大家有所帮助 下次我会给大家说说怎么获取 Silverlight的邮件点击事件~

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐