2012年10月15日星期一

快速构建Windows 8风格应用19

快速构建Windows 8风格应用19

本篇博文接着上篇博文《快速构建Windows 8风格应用18-基础控件I》介绍开发Windows 8风格应用中常用控件。

Slider

Slider控件常见的效果图:

clip_image001

如何在XAML代码中声明Slider控件呢?代码如下:

clip_image002

Value属性值表示Slider控件显示的初始值,应用运行状态下我们也可以拖动改变Slider控件的值。

C#代码中声明Slider控件。代码可以如下:

clip_image003

可以通过ValueChanged事件获取Slider控件当前的Value值

关于Slider类详细说明可以参考: Slider Class。

Image

Image控件常见的效果图:

clip_image005

如何在XAML代码中声明Slider控件呢?代码如下:

clip_image007

Image控件Source属性表示图片路径,Stretch表示图片伸展属性(包含Fill、None、Uniform、UniformToFill四个值)。

C#代码中声明Image控件。代码可以如下:

clip_image008

注意:使用C#代码显示图片,必须使用绝对路径。Image.Source property。

关于Image类详细说明可以参考:Image Class。

Tooltip:

Tooltip控件常见的效果图:

clip_image009

当我们把鼠标停靠在图片上时,出现提示框。

如何在XAML代码中控件声明Tooltip控件呢?代码如下:

clip_image011

这里以Image控件为例,其实其他控件中都可以去声明TooTipService。TooTipService的TooTip属性表示提示框显示的信息,Placement表示提示框显示的位置。

C#代码中声明Tooltip控件添加到某一控件中。代码可如下:

clip_image012

SetToolTip方法和SetPalcement方法的第一个参数都是传递某一控件对象。

关于Tooltip类详细说明可以参考:Tooltip Class。

Popup

Popup控件常见的效果图:

效果图1:

clip_image013

XAML代码设计如下:

clip_image015

代码中通过点击Button来显示Popup,Popup中放置一个Border控件,Border中包含了一个TextBlock和Button控件。

C#代码中:

clip_image017

通过设置Popup控件的IsOpen属性值来控制Popup是否显示(True为显示,False为隐藏)。

效果图2:

clip_image018

点击“Show Popup(with Parent)”按钮,弹出Popup。

Xaml代码如下:

clip_image020

Name为“ParentedPopup”的Popup控件中声明了<local:PopupInputConetnt>的自定义控件。Button的Click事件控制Popup是否进行显示。

PopupInputConetnt自定义控件XAML代码为:

clip_image021

效果图3:

clip_image022

点击“Show Popup(no Parent)”按钮,弹出Popup。

XAML代码:

clip_image024

C#代码:

clip_image026

代码中首先声明Popup对象nonParentPopup,将自定义控件PopupInputContent对象赋值给nonParentPopup的Child属性。

效果图4:

clip_image027

点击“Show Popup((with light dismiss)”按钮,弹出Popup。

XAML代码:

clip_image029

代码中将Popup的IsLightDismissEnabled属性值设置为True,表示当用户点击或触摸屏幕的任何位置,不包含Popup的位置,Popup控件是否消失。

效果图5:

clip_image030

点击“Show Popup(with light dismiss and animations)”按钮,弹出Popup并伴有动画效果

XAML代码中:

clip_image032

代码中将Popup的IsLightDismissEnabled属性值设置为True,并声明<PopupThemeTransition />Popup弹出时的动画。

效果图6:

clip_image034

点击“Show Popup(simulating Settings)”按钮,屏幕右侧弹出Popup并伴有动画效果

XAML代码中:

clip_image036

代码中将Popup的IsLightDismissEnabled属性值设置为True,并声明<PopupThemeTransition />Popup弹出时的动画。

通过C#代码来控制Popup从屏幕右侧弹出:

clip_image038

通过Popup的HorizontalOffset来控制弹出的水平方向位置。

MSDN提供了Popup示例代码:XAML Popup sample。

关于Popup类详细说明可以参考:Popup Class。

PasswordBox

PasswordBox控件常见的效果图:

clip_image039

XAML代码中:

clip_image041

PasswordBox控件中输入密码只能是一行不能换行。可以通过PasswordChar属性指定密码字符,MaxLength属性指定用户最多可以输入的字符数量,IsPasswordRevealButtonEnabled属性值为True时显示PasswordBox控件中内置按钮,用户触摸或点击该按钮时可显示密码文本,当用户释放该按钮时,密码会自动重新隐藏。

clip_image042

如何在C#代码中声明PasswordBox控件呢?代码如下:

clip_image043

关于PasswordBox类详细说明可以参考:PasswordBox Class。


TAG: