Image是UWP和WP8.1中系统自带的图片展示器。

具有较强的性能,使用也是非常的简单。

使用方式分为在XAML中,在C#代码中。

XAML中:

在XAML中使用方式非常简单。

常用XAML

Source :图片的地址

X:Name:当前控件的名称。

Tag:携带标签内容

Tapped :单击当前控件时

C# 代码中

            //实例化一个Image
Image my_img = new Image();

在C#中新建一个IMAGE则是非常简单的。新建IAMGE之后添加到面板空间就可以了。

   //添加
this.Content = my_img;

在c#中Image使用较难的时Source的添加。

image的Source的类型是ImageSouce类型。

第一种方法是直接添加到Source,第二种是使用BItmapImage添加。

先说第一种直接添加

            //实例化一个Image
Image my_img = new Image(); //控制透明度1~0
my_img.Opacity = 0.5; //使用BitMaPImage
my_img.Source = new BitmapImage(new Uri("ms-appx:///A23.jpg", UriKind.RelativeOrAbsolute)); //添加
this.Content = my_img;

其实这种方法也是使用BItMAPiMAGE 的,但是相对简单,NEW一下使用uri的绝对值就可以了。

这种方法在当前程序包内有需要使用的图片时可以使用。

第二种BitmapImage

这种方法需要从文件方式打开图片的时候使用。

          //Openfile 代表你要打开的文件。
var iFile =await StorageFile.GetFileFromPathAsync("OpenFile");
//实例化BitmapImage
BitmapImage bit = new BitmapImage();
//异步加载源,异步打开文件的随机访问流
await bit.SetSourceAsync(await iFile.OpenAsync(FileAccessMode.ReadWrite)); //实例化一个Image
Image my_img = new Image(); //控制透明度1~0
my_img.Opacity = 0.5; //使用BitMaPImage加载
my_img.Source = bit; //添加
this.Content = my_img;

基础的Image基本这么多了。

进阶Image适用方法。

问:在有屏幕触摸的情况下如何放大或者缩小图片?

答:我会两种方式。

一种是将图片加载到WebIView中,使用WEBview 自带的可以随意放大缩小图片。不过这其中涉及到HTML语言的使用。

而且使用WEBview加载本地图片也有周多不变。考虑到加载图片可以使用http://www.cnblogs.com/T-ARF/p/6430787.html这篇文章中WEBVIEW使用附加属性的方式来加载图片。会简单许多。

第二种是使用scrollViewer

这个是直接在XAML使用

       <ScrollViewer ZoomMode="Enabled" >
<Image Source="搜狗截图17年04月16日2032_1.bmp"/>
</ScrollViewer>

效果 使用模拟器模拟触摸

UWP&WP8.1 基础控件——Image的更多相关文章

  1. UWP&WP8.1 基础控件—TextBlock和TextBox

    TextBlock:文本展示控件,有着强大的功能 TextBox:文本输入控件. 这两个控件是最为常用的基础控件. TextBlock 基础用法: 打开一个UWP项目,在XAML设计页面你可以从工具箱 ...

  2. UWP&WP8.1 基础控件——Border

    border 是边框控件 border是UWP和WP8.1最常用的控件之一. border字面意义是用来添加边框的. 基础用法 <border BorderThickness="1&q ...

  3. UWP&WP8.1 基础控件——Grid

    Grid是一个面板控件  Grid是UWP和WPF,WP8.1中最重要的一个控件,相当相当重要. 他是一个面板控件,是用来添加其他控件   但是呢 用法确实简单的很. 大概就这个样子. 你用工具箱拖, ...

  4. UWP&WP8.1 基础控件—Button

    Button作为最常用的控件,没有特别难的用法,是一个非常简单,可以很快就掌握的控件. Button 基础用法: 同样,在UWP项目中,可以从工具箱中拖拽到面板中进行使用.也可以使用XAML语法进行编 ...

  5. Win10 UWP开发系列——开源控件库:UWPCommunityToolkit

    在开发应用的过程中,不可避免的会使用第三方类库.之前用过一个WinRTXamlToolkit.UWP,现在微软官方发布了一个新的开源控件库—— UWPCommunityToolkit 项目代码托管在G ...

  6. React Native环境搭建以及几个基础控件的使用

    之前写了几篇博客,但是没有从最基础的开始写,现在想了想感觉不太合适,所以现在把基础的一些东西给补上,也算是我从零开始学习RN的经验吧! 一.环境搭建 首先声明一下,本人现在用的编辑器是SublimeT ...

  7. Cocos2d-JS项目之二:studio基础控件的使用

    在studio里把几个基础控件往场景文件一拖,然后导出json格式的资源文件 逻辑代码如下: var HelloWorldLayer = cc.Layer.extend({ sprite:null, ...

  8. [iOS基础控件 - 5.5] 代理设计模式 (基于”APP列表"练习)

    A.概述      在"[iOS基础控件 - 4.4] APP列表 进一步封装,初见MVC模式”上进一步改进,给“下载”按钮加上效果.功能      1.按钮点击后,显示为“已下载”,并且不 ...

  9. Delphi一共封装(超类化)了8种Windows基础控件和17种复杂控件

    超类化源码: procedure TWinControl.CreateSubClass(var Params: TCreateParams; ControlClassName: PChar); con ...

随机推荐

  1. zabbix监控进程

    参考http://chenx1242.blog.51cto.com/10430133/1837990 1 前期说明 zabbix_server查看“文件在后台运行数量”所对应的key就是:proc.n ...

  2. webrtc 术语

    参考网址 https://webrtcglossary.com/ ORTC stands for Object-RTC.ORTC is an initiative involving Google, ...

  3. Poj 2367 Genealogical tree(拓扑排序)

    题目:火星人的血缘关系,简单拓扑排序.很久没用邻接表了,这里复习一下. import java.util.Scanner; class edge { int val; edge next; } pub ...

  4. 使用PHP的GD2裁剪 + 缩放图片

    /** * 裁剪 + 缩放图片 * @param array $params 包含x,y,width,height,path * @return string */ public function t ...

  5. array_diff函数的注意事项

    array_diff — 计算数组的差集 说明: array array_diff ( array $array1 , array $array2 [, array $... ] ) 对比返回在 ar ...

  6. POJ2230(打印欧拉回路)

    Watchcow Time Limit: 3000MS   Memory Limit: 65536K Total Submissions: 7473   Accepted: 3270   Specia ...

  7. ThreadPoolTaskExecutor的配置解释

    ThreadPoolTaskExecutor的配置在网上找了很多解释没找到,看了下ThreadPoolExecutor的配置,名字差不多,应该含义也差不多.只不过ThreadPoolTaskExecu ...

  8. 环形缓冲区的应用ringbuffer

    在嵌入式开发中离不开设备通信,而在通信中稳定性最高的莫过于环形缓冲区算法, 当读取速度大于写入速度时,在环形缓冲区的支持下不会丢掉任何一个字节(硬件问题除外). 在通信程序中,经常使用环形缓冲区作为数 ...

  9. C++模板的一些巧妙功能

    判断类中是否有指定名称的函数: #include<utility> #define HAS_MEMBER(member)\ template<typename T,typename. ...

  10. iOS 模块分解— Runtime

    相信对于从事开发人员来说 runtime 这个名称都不陌生,就像我起初只知道「 runtime 叫运行时 」,后来知道 runtime 同样可以像 KVC 一样访问私有成员变量,还有「 给类动态添加属 ...