UWP&WP8.1 基础控件——Image
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的更多相关文章
- UWP&WP8.1 基础控件—TextBlock和TextBox
TextBlock:文本展示控件,有着强大的功能 TextBox:文本输入控件. 这两个控件是最为常用的基础控件. TextBlock 基础用法: 打开一个UWP项目,在XAML设计页面你可以从工具箱 ...
- UWP&WP8.1 基础控件——Border
border 是边框控件 border是UWP和WP8.1最常用的控件之一. border字面意义是用来添加边框的. 基础用法 <border BorderThickness="1&q ...
- UWP&WP8.1 基础控件——Grid
Grid是一个面板控件 Grid是UWP和WPF,WP8.1中最重要的一个控件,相当相当重要. 他是一个面板控件,是用来添加其他控件 但是呢 用法确实简单的很. 大概就这个样子. 你用工具箱拖, ...
- UWP&WP8.1 基础控件—Button
Button作为最常用的控件,没有特别难的用法,是一个非常简单,可以很快就掌握的控件. Button 基础用法: 同样,在UWP项目中,可以从工具箱中拖拽到面板中进行使用.也可以使用XAML语法进行编 ...
- Win10 UWP开发系列——开源控件库:UWPCommunityToolkit
在开发应用的过程中,不可避免的会使用第三方类库.之前用过一个WinRTXamlToolkit.UWP,现在微软官方发布了一个新的开源控件库—— UWPCommunityToolkit 项目代码托管在G ...
- React Native环境搭建以及几个基础控件的使用
之前写了几篇博客,但是没有从最基础的开始写,现在想了想感觉不太合适,所以现在把基础的一些东西给补上,也算是我从零开始学习RN的经验吧! 一.环境搭建 首先声明一下,本人现在用的编辑器是SublimeT ...
- Cocos2d-JS项目之二:studio基础控件的使用
在studio里把几个基础控件往场景文件一拖,然后导出json格式的资源文件 逻辑代码如下: var HelloWorldLayer = cc.Layer.extend({ sprite:null, ...
- [iOS基础控件 - 5.5] 代理设计模式 (基于”APP列表"练习)
A.概述 在"[iOS基础控件 - 4.4] APP列表 进一步封装,初见MVC模式”上进一步改进,给“下载”按钮加上效果.功能 1.按钮点击后,显示为“已下载”,并且不 ...
- Delphi一共封装(超类化)了8种Windows基础控件和17种复杂控件
超类化源码: procedure TWinControl.CreateSubClass(var Params: TCreateParams; ControlClassName: PChar); con ...
随机推荐
- Jmeter & TICK
背景: 本来只是想在将Jmeter的测试结果写入InfluxDB, 但发现从InfluxDB V1.3后开始, 已经不支持Web Admin interface, 才发现InfluxData 搞了 ...
- MySQL 查询数据表里面时间字段为今天添加的计数
一: 下面这条语句查出来的count值 . 查询类型ID(category_id)为18的,今天插入的数据数, created_on: 为数据表中一字段 datetime类型, 记录此条数据添加的时 ...
- 第二届PHP全球开发者大会(含大会的PPT)
PHP全球开发者大会于2016年5月14日至15日在北京召开 更多现场图片请猛击: http://t.cn/RqeP7y9 , http://t.cn/RqD8Typ 最后,这次大会的PPT可以在这 ...
- 新建一个Model类的注意事项
昨天在工作中新建了一个Model类在测试环境测试一点问题也没有,到了生产环境就报错了,由于调用的是分页类,报错说:在520行 _count() 函数不存在. 我的思路是:先到生产环境查看了具体的报错文 ...
- [转载]PCI/PCIe基础——配置空间
转载地址:http://blog.csdn.net/jiangwei0512/article/details/51603525 PCI/PCIe设备有自己的独立地址空间,这部分空间会映射到整个系统的地 ...
- (转)SC命令---安装、开启、配置、关闭windows服务 bat批处理
本文转载自:http://blog.csdn.net/moruna/article/details/9190733 废话不多说,看命令行更直接! 一.直接使用cmd来进行服务的一些操作 1.安装服务 ...
- Java 8新增的日期、时间格式器
一 获取DateTimeFormatter对象的三种方式 直接使用静态常量创建DateTimeFormatter格式器 使用代码不同风格的枚举值来创建DateTimeFormatter格式器 根据模式 ...
- codeforce 510C Fox And Names(拓扑排序)
Fox And Names time limit per test 2 seconds memory limit per test 256 megabytes input standard input ...
- 【转】Rails中Bootstrap的安装和使用
转自:http://blog.csdn.net/lissdy/article/details/9195651 眼看着前端攻城师们都开始使用Bootstrap创作网页,于是也想学着在最近正在学习的 ...
- ConfigureAwait(false)
昨天在做项目的时候,用的dapper查数据用的QueryAsync 异步方法.给上级做代码审核时,上级说最好加上ConfigureAwait(false).能减少一些性能开销. 因为之前没用过所以看了 ...