上篇回顾
先前三篇连续讲了数据绑定,这些显然并不是数据绑定的全部技巧与内容,比如还有转换器(Converter)等等的知识点没有提及。目前打算在中阶的课程里面再补充一些。
本篇正文
这一次我们来讲一下 XAML 控件中另外两个常用控件。分别是 ScrollViewer
和 Image
。
-
ScrollViewer
就是滚轮可滑动的区域,毕竟实际开发中,很多内容不可能一页就能显示完全的。需要我们来滚动实现。举个例子,ListView
和GridView
中就本身内置了滚轮。但如果碰到例如TextBlock
,那我们就需要自己加一个ScrollViewer
。-
基本语法
Place the control you wanted in here 复制代码 -
例子
这里我们举个栗子,我们有一个很多文字的
TextBlock
,通过之前的知识,应该知道如果横向TextBlock
里面的文字超出了应用的边界,我们可以通过TextWrapping
来设置。但如果本身设置了这个属性,但是这时候,纵向文字又超出了应用的边界,那么我们就需要ScrollViewer
。-
用
ScrollViewer
包裹TextBlock
,如下:**解释:**其中为了便于演示,讲字体调大了。两个
TextBlock
标签之前是一长串文字 -
然后运行,就能看到效果,如下图:
-
-
常用属性:
-
VerticalScrollBarVisibility
,HorizontalScrollBarVisibility
两个分别是 垂直方向滑动条 和 水平方向滑动条的可见性。对应的值分别有
Auto
,Disable
,Hidden
,Visible
。举个例子,比如你觉得滚动条太丑了,你可以这里面设置为Hidden
。默认情况下都为
Auto
。 -
VerticalScrollMode
,HorizontalScrollMode
两个分别是 垂直方向 和 水平方向的滚动模式。对应的值分别有
Auto
,Disable
,Enable
。比如在一些特定情况下,你不想让它滚动,就设置为Disable
即可。默认情况下都为
Auto
。
-
-
注意事项
-
在
StackPanel
中ScrollViewer
是无效的。反之,ScrollViewer
中放StackPanel
是可以的,如下: -
在
Grid
中行高或列高为Auto
的格子内ScrollViewer
是无效的。反之,是可以的,如下:
-
-
-
Image
顾名思义,就是放图片的控件。-
基本语法
复制代码
解释:
Source
里面的链接就是Project
里面的导入本地文件的地址,文件位置如下图:如果想要引用网络上的图片,将链接直接写入
Source
里面,如下:复制代码
-
常用属性
-
Stretch
这个属性可以改变图片的填充方式,对应的值有
Fill
,None
,Uniform
,UniformToFill
。其中Fill
就是简单的填满,Uniform
是保持图片比例为原来的比例,但是很多情况下会留下黑边。UniformToFill
就是相对来说比较常用的,等比例拉伸图片,充满应用框。 -
NineGrid
这个属性我不多做介绍了,这里引用 XAML Control Gallery 里面的例子:
-
-
通过 C# 来设置
Source
-
项目内文件:
MyImage.Source = new BitmapImage(new Uri("ms-appx:///Assets/Test.jpg"));复制代码
**解释:**需要在之前的链接之前加上
ms-appx://
以表示我们引用的是项目内部的文件。 -
网络图片:
MyImage.Source = new BitmapImage(new Uri("https://rawgit.com/totoroyyb/UWP-Develop-Tutorial/master/pic/level1/chapter12/1.png"));复制代码
**解释:**引用网络图片的话,可以直接填入。当然,你还可以设置 Uri 的类型,存在对应的函数重载。
-
-
结语
今天讲了这两个比较简单,但是很常用的控件。这 13 篇文章以来,其实大家已经完全可以进行简单的基本开发了。接下来几篇,将补全之前的控件知识,剩下的就是简单的打包与上传发布了。很快大家就能搭建自己简单的 UWP 啦!
好啦!
我们下篇见!