Win10系列:C#应用控件基础8
ToggleSwitch控件
在应用程序中ToggleSwitch控件可以模拟一个允许用户在启用和禁用两种状态之间进行切换的物理开关,ToggleSwitch控件的功能与我们在日常生活中所使用的电源开关类似。
在XAML文件中,ToggleSwitch控件的用法如下所示:
<ToggleSwitch .../>
下面介绍一下ToggleSwitch控件的常用属性:
- Header属性,获取或设置ToggleSwitch控件的标题内容。
- OffContent属性,当ToggleSwitch控件是禁用状态时,使用OffContent属性显示文本内容。
- OnContent属性,当ToggleSwitch控件是启用状态时,使用OnContent属性显示文本内容。
介绍完常用属性后,接着来看一下ToggleSwitch控件的常用事件:
- Toggled事件,当ToggleSwitch控件的状态发生改变时触发。
- Tapped事件,当单击ToggleSwitch控件的文字区域时触发。
接下来使用ToggleSwitch控件设计一个开关,拨动开关可以显示不同的效果。
新建一个Windows应用商店的空白应用程序项目,并命名为ToggleSwitchDemo,在MainPage.xaml文件的Grid元素中添加如下代码。
<ToggleSwitch Name="MyToggleSwitch" Header="ToggleSwitch控件示例" OffContent="禁用状态" FontSize="20" OnContent="启用状态" Toggled="ToggleSwitch_Toggled" HorizontalAlignment="Center" Margin="543,338,618,343"/>
<ProgressRing Name="MyProgressRing" Width="50" Height="50" Margin="748,359,568,359"/>
在上面的代码中,添加了一个ToggleSwitch控件,定义其Header属性的值为"ToggleSwitch控件示例"、OffContent属性的值为"禁用状态"以及OnContent属性的值为"启用状态",然后为Toggled事件注册了事件处理方法ToggleSwitch_Toggled,以便在拨动ToggleSwitch控件时显示不同效果。为了更好的显示对比效果,添加了一个不确定进度环ProgressRing控件(在4.4.4小节将对ProgressRing控件进行介绍)。接着定义ProgressRing控件的Name属性为MyProgressRing,Width属性和Height属性的值为50。
布局好前台界面后,打开MainPage.xaml.cs文件,为ToggleSwitch控件的Toggled事件添加ToggleSwitch_Toggled处理方法,当拨动ToggleSwitch控件时会启用或禁用此控件以便显示或隐藏不确定进度环。代码如下所示:
private void ToggleSwitch_Toggled(object sender, RoutedEventArgs e)
{
if (MyToggleSwitch.IsOn == true)
{
//显示不确定进度环和动画效果
MyProgressRing.IsActive = true;
MyProgressRing.Visibility = Visibility.Visible;
}
else
{
//隐藏不确定进度环
MyProgressRing.IsActive = false;
MyProgressRing.Visibility = Visibility.Collapsed;
}
}
在上面的代码中,通过MyToggleSwitch拨动开关的IsOn属性来判断开关的当前状态,当拨动开关处于启用状态时,其IsOn属性的值为true,设置MyProgressRing不确定进度环的IsActive属性和Visibility属性的值分别为true和Visibility.Visible,使不确定进度环显示出来并显示动画效果。
当拨动开关处于禁用状态时,其IsOn属性的值为false,设置MyProgressRing不确定进度环的IsActive属性和Visibility属性的值分别为false和Visibility.Collapsed,使不确定进度环隐藏。
运行程序,ToggleSwitch控件默认处于禁用状态,如图4-15所示,拨动开关后,将ToggleSwitch控件设置到启用状态,界面将显示带有动画效果的不确定进度环,如图4-16所示。
图4-15 ToggleSwitch控件示例——拨动开关前 图4-16 ToggleSwitch控件示例——拨动开关后
Win10系列:C#应用控件基础8的更多相关文章
- Win10系列:JavaScript 控件的使用
向页面中添加的控件可分为两种类型:标准的HTML控件和WinJS库控件.其中标准的HTML控件是指HTML标准中定义的基本控件,如按钮和复选框:WinJS库控件是为开发基于JavaScript 的Wi ...
- WPF从我炫系列4---装饰控件的用法
这一节的讲解中,我将为大家介绍WPF装饰控件的用法,主要为大家讲解一下几个控件的用法. ScrollViewer滚动条控件 Border边框控件 ViewBox自由缩放控件 1. ScrollView ...
- WPF 模仿 UltraEdit 文件查看器系列一 用户控件
WPF 模仿 UltraEdit 文件查看器系列一 用户控件 运行环境:Win10 x64, NetFrameWork 4.8, 作者:乌龙哈里,日期:2019-05-10 章节: 起步 添加用户控件 ...
- C#控件系列--文本类控件
C#控件系列--文本类控件 文本类控件主要包含Label.LinkLabel.Button.TextBox以及RichTextBox. Label 功能 Label用来 ...
- 重新想象 Windows 8 Store Apps (17) - 控件基础: Measure, Arrange, GeneralTransform, VisualTree
原文:重新想象 Windows 8 Store Apps (17) - 控件基础: Measure, Arrange, GeneralTransform, VisualTree [源码下载] 重新想象 ...
- 重新想象 Windows 8 Store Apps (16) - 控件基础: 依赖属性, 附加属性, 控件的继承关系, 路由事件和命中测试
原文:重新想象 Windows 8 Store Apps (16) - 控件基础: 依赖属性, 附加属性, 控件的继承关系, 路由事件和命中测试 [源码下载] 重新想象 Windows 8 Store ...
- WPF编游戏系列 之四 用户控件
原文:WPF编游戏系列 之四 用户控件 在上一篇<WPF编游戏系列 之三 物品清单>中,对物品清单进行了演示,其中反复用到了同一组控件(如下图),而且 颜昌钢也指出在3.2. ...
- Delphi XE2 之 FireMonkey 入门(44) - 控件基础: TTreeView、TTreeViewItem
Delphi XE2 之 FireMonkey 入门(44) - 控件基础: TTreeView.TTreeViewItem TScrollBox -> TCustomTreeView -> ...
- Delphi XE2 之 FireMonkey 入门(43) - 控件基础: TStringGrid、TGrid
Delphi XE2 之 FireMonkey 入门(43) - 控件基础: TStringGrid.TGrid TStringGrid.TGrid 都是从 TCustomGrid 继承; 区别有:1 ...
- Delphi XE2 之 FireMonkey 入门(42) - 控件基础: TComboBox、TComboEdit
Delphi XE2 之 FireMonkey 入门(42) - 控件基础: TComboBox.TComboEdit TListBox 有两个兄弟 TComboListBox.TComboEditL ...
随机推荐
- 【UML】NO.47.EBook.5.UML.1.007-【UML 大战需求分析】- 部署图(Deployment Diagram)
1.0.0 Summary Tittle:[UML]NO.47.EBook.1.UML.1.007-[UML 大战需求分析]- 部署图(Deployment Diagram) Style:Design ...
- maven pom添加oracle11驱动
参考这篇文章 https://blog.csdn.net/youren_zt/article/details/60132324 OracleJDBC驱动包是需要Oracle官方授权才能被下载.mave ...
- C# 并发编程 · 经典实例
http://www.cnblogs.com/savorboard/p/csharp-concurrency-cookbook.html 异步基础 任务暂停,休眠 异步方式暂停或者休眠任务,可以使用 ...
- 蓝桥杯近三年初赛题之二(16年b组)
1. 煤球数目 有一堆煤球,堆成三角棱锥形.具体:第一层放1个,第二层3个(排列成三角形),第三层6个(排列成三角形),第四层10个(排列成三角形),....如果一共有100层,共有多少个煤球? 请填 ...
- Spring Cloud配置中心(Config)
Spring Cloud配置中心(Config) Spring Cloud是现在流行的分布式服务框架,它提供了很多有用的组件.比如:配置中心.Eureka服务发现. 消息总线.熔断机制等. 配置中心在 ...
- WebForm母版页
母版页:可以把界面的部分代码进行重用 添加新项-母版页 在母版页中界面代码不要写在 <asp:ContentPlaceHolder ID="head" runat=" ...
- 视图模型-Lambda表达式
EF中通过改变实体对象达到操作数据库表数据的目的,在对数据库实体操作时,肯定少不了和Linq.Lambda打交道,熟悉SQL的话,上手 Linq并不难,from in where select... ...
- 在java中,将String类型字符串s赋值为null后,将字符串与其他字符串拼接后得到结果出现了null字符串与其他字符连接的样式
String s = null; s += "hello"; System.out.println(s); 结果为:nullhello 原因: 先应用String.valueOf ...
- 【js】字符串反转可实现的几种方式
方式1: 这种方式比较简单,推荐使用 字符串转数组,反转数组,数组转字符串. split(""):根据空字符串拆分数组 reverse():数组反转元素位置 join(" ...
- Nginx配置SSL证书实现https访问「浏览器未认证」
http 和 https 介绍 http:应用最广泛的一种网络协议,是一个B/S的request和response的标准,用于从www服务器传输超文本到本地浏览器的传输协议. https:以安全为目标 ...