Windows Phone开发:常用控件(上)
2019独角兽企业重金招聘Python工程师标准>>>
Windows Phone的控件有几个来源,和传统的桌面应用程序开发或Web开发一样,有默认提供的控件和第三方开者发布的控件。一般而言,如果不是过于复杂的界面布局,使用默认控件就足矣。相比之下,Android SDK中尽管提供了许多可视化控件,但你会发现,实际开发用到的并不多,而且很多控件完全只是摆设,既没有公开相应的操作方法也没有更多可用于开发者自行处理的监听器(这里我习惯翻译为监听器,在安卓里面没有像C#那样使用事件,而是new一个监听器,当然原理是相似的)。
除了游戏开外,我们在WP上基本上是使用Silverlight,因此,WP的大部分控件都来自Silverlight(银光)。
一、TextBlock控件。
这个控件的功用和Android里面的TextView一样,无它就是用来显示一些静文本,当然,这个静态文本不是说我们不能修改,而只是一个相对词,相对于可以让用户进行输入的文本框控件而言的,没什么,如果大家做过WinForm开发,它就相当于Label控件,如果你接触过以前VC++中的MFC开发的,也类似于Static文本控件。好了,废话说多了,我们来看看例子吧。
<TextBlock x:Name="txtBlock" Text="你好。"/>
对,这样我们就在页面中声明了一个TextBlock,并把上面显示的文本文设置为“你好”。
对于如何声明控件,我就不多说了,你可以使用设计视图,直接从工具箱中拖放,然后在“属性”窗口中进行设置,这和传统的WinForm开发差不多。
对于TextBlock控件,也许我们最常用的属性有两个:
1、Text,不用多介绍了,当然是显示的文本内容了。
2、FontSize,调整字体的大小。
下面我再通过一个例子来说一下TextBlock控件的高级使用方法,何为高级?哈,看了你就知道。
<TextBlock x:Name="txtBlock" FontSize="42" TextWrapping="Wrap">你好,<Bold>小黄</Bold>,<Italic>今天几点起床?</Italic>
</TextBlock>
(图1)
上例中,我们看到,“你好”是正常显示的,“小黄”是被加粗的,“今天几点起床”是斜体。也就是说,在TextBlock内部我们可以使用相关的文档格式化标记,使文本能以多
种形式展示。
再看一个例子。
<TextBlock Grid.Row="2" FontSize="40" >优酷视频<LineBreak/>土豆视频
</TextBlock>
这样,我们就可把文本进行换行。
(图2)
下面再来看看Run元素的使用,因为是从Silverlight继承过来,所以不一定所有标记都有效,我们不妨多试试。
<TextBlock Grid.Row="4" FontSize="40" TextWrapping="Wrap"><Run FontStyle="Italic"FontFamily="Tahoma"FontSize="65"Foreground="Orange">荷塘月色</Run>
</TextBlock>
(图3)
二、Button控件。
这个家伙相信不用我来引见了,大家一最熟悉不过了,按钮在开发中使用的频率是灰常高的,而它用起来也灰常简单,关键是处理好它的单击事件,就基本上完事了。
<Button Content="Click Me" HorizontalAlignment="Left" Margin="58,68,0,0" Name="button1" VerticalAlignment="Top" Click="button1_Click"/>
如果你对WPF或Silverlight不是很了解,我这里简单说一下,
(图4)
从上图中我们看到,Button是从ContentControl中派生,也就是说,如果你要设置按钮上显示的文本,就应当设置它的Content属性。
注意哦,Content属性是object类型的,也就是,我们不仅仅可以设置文本作为按钮的内容,只要能被显示的东东,我们都可以赋给Content属性,不信?试试吧。
<Button HorizontalAlignment="Left" Margin="58,68,0,0" Name="button1" VerticalAlignment="Top"Click="button1_Click"><Button.Content><Ellipse Height="76" Width="125"><Ellipse.Fill><LinearGradientBrushStartPoint="0,0"EndPoint="1,1"><GradientStop Color="Yellow" Offset="0.12"/><GradientStop Color="MediumVioletRed" Offset="1"/></LinearGradientBrush></Ellipse.Fill></Ellipse></Button.Content>
</Button>
运行之后看看,是不是很有意思?
(图5)
三、CheckBox控件。
这个东东更不用说了,看示例吧。
<StackPanel Orientation="Vertical"><CheckBox Content="白菜" IsChecked="True"/><CheckBox Content="梨子"/><CheckBox Content="苹果" IsChecked="False"/><CheckBox Content="鲜花"/>
</StackPanel>
(图6)
转载于:https://my.oschina.net/taojianrong/blog/99480
Windows Phone开发:常用控件(上)相关推荐
- 11. Windows应用程序常用控件
Windows应用程序常用控件 1 控件概述 1.1 控件的分类及作用 1.2 控件的命名规范 1.2 控件的相关操作 2.1 添加控件 2.2 对齐控件 2.3 锁定控件 2.4 删除控件 3 文本 ...
- Windows窗体和常用控件的事件处理函数
Windows窗体 WM_NULL = $0000; WM_CREATE = $0001; 应用程序创建一个窗口 WM_DESTROY = $0002; 一个窗口被销毁 WM_MOVE = $ ...
- 【万里征程——Windows App开发】控件大集合1
添加控件的方式有多种,大家更喜欢哪一种呢? 1)使用诸如 Blend for Visual Studio 或 Microsoft Visual Studio XAML 设计器的设计工具. 2)在 Vi ...
- Windows Phone 7 常用控件简介
1. Grid控件 Grid定义由列和行组成的网格布局.Grid.RowDefinitions和Grid.ColumnDefinitions集合分别包含RowDefinition和Colu ...
- Windows phone8 基础篇(三) 常用控件开发
广告: 为了方便我们大家一起学习和讨论,我开设了一个群300143953.专门关于windows phone开发学习的群.因为群刚建,所以没人.欢迎大家.另外如果出现啥错误性的问题,希望大家能够 指 ...
- Windows Phone开发(11):常用控件(下)
原文:Windows Phone开发(11):常用控件(下) WP控件大部分都可以从Silverlight中继承过来,这里我也只能拿一部分作演示,对于其它控件如何使用,可以参考SDK相关说明以及Sil ...
- 基于WP7开发的Silverlight常用控件详解
Silverlight是一个跨浏览器.跨客户平台的技术,能够设计.开发和发布有多媒体体验与富交互(RIA,Rich Interface Application)的网络交互程序. 针对Windows P ...
- Android 开发 -- 开发第一个安卓程序、Android UI开发(布局的创建:相对布局和线性布局、控件单位:px pt dp sp、常用控件 、常见对话框、ListView)
文章目录 1. 开发第一个Hello World程序 1.1 开发程序 1.2 认识程序中的文件 1.3 Android程序结构 1.4 安卓程序打包 2. Android UI开发 2.1 布局的创 ...
- 【Qt】桌面应用开发教程——布局|按钮组|容器|常用控件|消息事件机制
文章目录 3.布局 3.1 系统提供的布局控件 3.2 利用widget做布局 3.3 利用表单做布局 4.按钮组 5.项目构建组 6.容器 7.常用控件 7.1 QLabel控件使用 7.1.1 显 ...
- Windows应用程序设计基础(常用控件2)
列表框控件 列表框(ListBox)控件提供一个项目列表,,用户可从中选择一项或多项.(若超过可显示的项目数会自动添加滚动条) 列表框内的项目为列表项,列表项的加入是按照一定顺序进行的,这个顺序号称为 ...
最新文章
- zendframwork入口关键Zend_Application.php类
- s := time.Now().Format(20060102) go格式化
- bootstrap基础
- Tomcat8源码编译及导入Eclipse中研究
- 缩点(有向图的强连通分量)学习笔记
- 《大数据》第2期 专题导读
- Makefile初步理解
- 夺冠没含金量!用python和BI可视化分析,湖人赢在这点上
- stem函数--Matplotlib
- 为什么远程计算机后会黑屏,解决Win10电脑远程桌面黑屏的问题
- 研发人员提高自身水平促进网络棋牌游戏发展
- IMFI DAO World of Balatroon:土地出售即将到来!
- 2022idea报错快速解决方法图解:Invocation error: unable to read askpass response from ‘C:\Users\QKN\AppDat
- flexbox布局详解
- 数据结构和算法 第一章 综述(1)
- 局域网内通过ip获取主机名
- Linux操作系统概述
- 如何自学入门网络安全?
- Storage 的使用
- 微信小程序 - 设置图片高度自适应(宽度固定)
热门文章
- bash之预定义变量
- 读《程序是怎样跑起来的》第一章有感
- 并发编程之多线程篇之四
- iOS 11 UIScrollView的新特性(automaticallyAdjustsScrollViewInsets 不起作用了)
- winform控件大小改变是防止背景重绘导致的闪烁
- The import java.util cannot be resolved The import javax.servlet cannot be resolved
- 日期参数format格式详细用法
- Eclipse的设置、调优、使用(解决启动卡顿等问题)----转
- Spring - 同一个类中的方法互相调用,注解失效问题的分析和解决(转)
- Chrome浏览器打开异常慢的解决办法