快速构建Windows 8风格应用19-基础控件II

时间:2022-09-13 14:44:19

原文:快速构建Windows 8风格应用19-基础控件II

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

Slider

Slider控件常见的效果图:

快速构建Windows 8风格应用19-基础控件II

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

快速构建Windows 8风格应用19-基础控件II

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

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

快速构建Windows 8风格应用19-基础控件II

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

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

Image

Image控件常见的效果图:

快速构建Windows 8风格应用19-基础控件II

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

快速构建Windows 8风格应用19-基础控件II

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

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

快速构建Windows 8风格应用19-基础控件II

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

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

Tooltip:

Tooltip控件常见的效果图:

快速构建Windows 8风格应用19-基础控件II

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

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

快速构建Windows 8风格应用19-基础控件II

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

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

快速构建Windows 8风格应用19-基础控件II

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

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

Popup

Popup控件常见的效果图:

效果图1:

快速构建Windows 8风格应用19-基础控件II

XAML代码设计如下:

快速构建Windows 8风格应用19-基础控件II

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

C#代码中:

快速构建Windows 8风格应用19-基础控件II

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

效果图2:

快速构建Windows 8风格应用19-基础控件II

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

Xaml代码如下:

快速构建Windows 8风格应用19-基础控件II

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

PopupInputConetnt自定义控件XAML代码为:

快速构建Windows 8风格应用19-基础控件II

效果图3:

快速构建Windows 8风格应用19-基础控件II

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

XAML代码:

快速构建Windows 8风格应用19-基础控件II

C#代码:

快速构建Windows 8风格应用19-基础控件II

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

效果图4:

快速构建Windows 8风格应用19-基础控件II

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

XAML代码:

快速构建Windows 8风格应用19-基础控件II

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

效果图5:

快速构建Windows 8风格应用19-基础控件II

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

XAML代码中:

快速构建Windows 8风格应用19-基础控件II

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

效果图6:

快速构建Windows 8风格应用19-基础控件II

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

XAML代码中:

快速构建Windows 8风格应用19-基础控件II

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

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

快速构建Windows 8风格应用19-基础控件II

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

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

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

PasswordBox

PasswordBox控件常见的效果图:

快速构建Windows 8风格应用19-基础控件II

XAML代码中:

快速构建Windows 8风格应用19-基础控件II

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

快速构建Windows 8风格应用19-基础控件II

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

快速构建Windows 8风格应用19-基础控件II

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

快速构建Windows 8风格应用19-基础控件II的更多相关文章

  1. 快速构建Windows 8风格应用18-基础控件I

    原文:快速构建Windows 8风格应用18-基础控件I 本篇博文主要介绍Windows 8风格应用开发中常用的几种基础控件. ProgressRing: ProgressRing控件常见的效果图: ...

  2. 快速构建Windows 8风格应用17-布局控件

    原文:快速构建Windows 8风格应用17-布局控件 本篇博文主要介绍三种常用的布局控件:Canvas.Grid.StackPanel. Panel类是开发Windows 8 Store应用中一个重 ...

  3. 快速构建Windows 8风格应用4-FlipView数据控件

    原文:快速构建Windows 8风格应用4-FlipView数据控件 本篇博文主要介绍为什么使用FlipView控件.什么是FlipView控件.如何使用FlipView控件和FlipView控件最佳 ...

  4. 快速构建Windows 8风格应用5-ListView数据控件

    原文:快速构建Windows 8风格应用5-ListView数据控件 本篇博文主要介绍什么是ListView数据控件.如何构建ListView数据控件. 什么是ListView数据控件? 1)  Li ...

  5. 快速构建Windows 8风格应用6-GridView数据控件

    原文:快速构建Windows 8风格应用6-GridView数据控件 本篇博文主要介绍什么是GridView数据控件.如何构建常用的GridView数据呈现样式. 什么是GridView数据控件? G ...

  6. 快速构建Windows 8风格应用21-构建简单媒体播放器

    原文:快速构建Windows 8风格应用21-构建简单媒体播放器 本篇博文主要介绍如何构建一个简单的媒体播放器. <快速构建Windows 8风格应用20-MediaElement>博文中 ...

  7. 快速构建Windows 8风格应用32-构建辅助磁贴

    原文:快速构建Windows 8风格应用32-构建辅助磁贴 引言 Windows Phone中,我们开发者可能会开发的一个功能点是将数据列表中某一项"Pin To Start(固定到开始屏幕 ...

  8. 快速构建Windows 8风格应用15-ShareContract构建

    原文:快速构建Windows 8风格应用15-ShareContract构建 本篇博文主要介绍共享数据包.如何构建共享源.如何构建共享目标.DataTransferManager类. 共享数据包 Da ...

  9. 快速构建Windows 8风格应用14-ShareContract概述及原理

    原文:快速构建Windows 8风格应用14-ShareContract概述及原理 本篇博文主要介绍Share Contract概述.Share Contract实现原理.实现Share Contra ...

随机推荐

  1. SQL疑难问题

    最近,遇到并解决一个SQL上的疑难问题.考勤系统,记录着员工进出公司的刷卡记录.而员工刷卡并不规范,存在刷多次的情况.例如:出去时连续刷多次,进来时也连续刷多次.筛选有效刷卡记录数据的规则:对于出去时 ...

  2. Selenium2入门(二)WebDriver

    前文Selenium2入门(一)说到Selenium是Web 应用程序测试框架,那么如果对一个简单的web应用需求:打开浏览器,登录百度首页,输入“欧洲杯”关键词,点击搜索按钮 这一系列操作,能否用S ...

  3. javascript设计模式学习之十五——装饰者模式

    一.装饰者模式定义 装饰者模式可以动态地给某个对象添加一些额外的职责,而不会影响从这个类中派生的其他对象.这种为对象动态添加职责的方式就称为装饰者模式.装饰者对象和它所装饰的对象拥有一致的接口,对于用 ...

  4. magento产品成功添加到购物车后跳转到不同页面 添加 add to cart 按钮

    1 添加产品到购物车成功后是跳转到购物车页面或不跳转.这个在后台可以设置 system -> configuration -> After Adding a Product Redirec ...

  5. 一种JavaScript 类的设计模式

    一种JavaScript 类的设计模式尽管前面介绍了如何定义一个类,如何初始化一个类的实例,但既可以在function定义的函数体中添加成员,又可以用prototype 定义类的成员,代码显的很混乱, ...

  6. Java常用知识点

    1. java不支持默认参数,需要用重载来实现 2. java中要比较字符串是否相等,不能用等号,要用equals函数来比较内容 3. 尽量避免使用try catch来捕获异常,可以使用if语句判断以 ...

  7. 分享Mvc3&plus;NInject&plus;EF&plus;LigerUI权限系统Demo

    前段时间时不时看到有园友的分享权限系统,于是本人突发奇想,也想写一个玩玩,就利用晚上时间,陆陆续续花了一周多样子,写了如今这个权限系统,这个权限系统具有 组织结构.用户.角色.菜单,组织结构下挂用户, ...

  8. CentOS 7 &plus; MySql 中文乱码解决方案

    原文:https://blog.csdn.net/qq_32953079/article/details/54629245,亲测有效,故记录之. 一.登录MySQL查看用SHOW VARIABLES ...

  9. 畅通工程续(HDU 1874)附上超详细源代码

    Problem Description 某省自从实行了很多年的畅通工程计划后,终于修建了很多路.不过路多了也不好,每次要从一个城镇到另一个城镇时,都有许多种道路方案可以选择,而某些方案要比另一些方案行 ...

  10. 2018秋寒假作业4- -PTA编程总结1

    PTA1打印沙漏.打印沙漏中的“沙漏形状”,就是每行输出的奇数符号与各行符号中心对齐:相邻两行符号数相差2:符号数从大到小递减到1,再从小到大递增.在做的时候出了几次错,编译发先是几个小地方出错了.以 ...