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开发:常用控件(上)相关推荐

  1. 11. Windows应用程序常用控件

    Windows应用程序常用控件 1 控件概述 1.1 控件的分类及作用 1.2 控件的命名规范 1.2 控件的相关操作 2.1 添加控件 2.2 对齐控件 2.3 锁定控件 2.4 删除控件 3 文本 ...

  2. Windows窗体和常用控件的事件处理函数

    Windows窗体  WM_NULL = $0000;  WM_CREATE = $0001; 应用程序创建一个窗口  WM_DESTROY = $0002; 一个窗口被销毁  WM_MOVE = $ ...

  3. 【万里征程——Windows App开发】控件大集合1

    添加控件的方式有多种,大家更喜欢哪一种呢? 1)使用诸如 Blend for Visual Studio 或 Microsoft Visual Studio XAML 设计器的设计工具. 2)在 Vi ...

  4. Windows Phone 7 常用控件简介

    1.       Grid控件 Grid定义由列和行组成的网格布局.Grid.RowDefinitions和Grid.ColumnDefinitions集合分别包含RowDefinition和Colu ...

  5. Windows phone8 基础篇(三) 常用控件开发

    广告:  为了方便我们大家一起学习和讨论,我开设了一个群300143953.专门关于windows phone开发学习的群.因为群刚建,所以没人.欢迎大家.另外如果出现啥错误性的问题,希望大家能够 指 ...

  6. Windows Phone开发(11):常用控件(下)

    原文:Windows Phone开发(11):常用控件(下) WP控件大部分都可以从Silverlight中继承过来,这里我也只能拿一部分作演示,对于其它控件如何使用,可以参考SDK相关说明以及Sil ...

  7. 基于WP7开发的Silverlight常用控件详解

    Silverlight是一个跨浏览器.跨客户平台的技术,能够设计.开发和发布有多媒体体验与富交互(RIA,Rich Interface Application)的网络交互程序. 针对Windows P ...

  8. 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 布局的创 ...

  9. 【Qt】桌面应用开发教程——布局|按钮组|容器|常用控件|消息事件机制

    文章目录 3.布局 3.1 系统提供的布局控件 3.2 利用widget做布局 3.3 利用表单做布局 4.按钮组 5.项目构建组 6.容器 7.常用控件 7.1 QLabel控件使用 7.1.1 显 ...

  10. Windows应用程序设计基础(常用控件2)

    列表框控件 列表框(ListBox)控件提供一个项目列表,,用户可从中选择一项或多项.(若超过可显示的项目数会自动添加滚动条) 列表框内的项目为列表项,列表项的加入是按照一定顺序进行的,这个顺序号称为 ...

最新文章

  1. 电商项目商品搜索模块 - ESik分词器安装
  2. 状态压缩 HDU 1565
  3. 《LINUX3.0内核源代码分析》第二章:中断和异常 【转】
  4. java国际化——日期和时间+排序
  5. java 子类继承父类_关于Java 的继承问题,子类会继承父类的哪些东西?-----转载...
  6. 欧几里得算法及其扩展
  7. 开发辅助工具Kalman Studio2.0发布,内置基于T4的代码生成器
  8. 理解Hinton的Capsule Networks1
  9. [转载]手工安全测试方法修改建议
  10. 永远不要去依赖别人_心理学:永远不要穿别人剩下的旧衣服,这三点原因读来让人愧疚...
  11. c语言字符笛卡尔积,JavaScript笛卡尔积超简单实现算法示例
  12. Web前端工作笔记012---IE8兼容_WebSocket
  13. 《编译原理》一道关于逆波兰式的作业题(学委推导出了逆波兰式的数学公式表示)
  14. bzoj4008: [HNOI2015]亚瑟王
  15. Qt入门使用Qt编写程序详细全过程
  16. 修改Oracle密码
  17. 移动开发采用什么平台好?
  18. php 合成图片,合成圆形图片
  19. 湖南中烟计算机类考什么,2022湖南中烟专业知识模拟题:计算机类(八)
  20. 安卓开发 Fragment的简单使用与解析

热门文章

  1. python复制文件夹不阻塞_Python学习第54天(阻塞(blocking) IO和非阻塞(non-blocking)IO)...
  2. JS中同步与异步的理解
  3. Firefox显示 您的链接不安全 的解决办法
  4. 常见浏览器兼容问题、盒模型2种模式以及css hack知识讲解
  5. 【转载】在服务器上用Fiddler抓取HTTPS流量
  6. perl6之'Hello World'
  7. 幸运 - 一种可以学习的简单技能
  8. 出现java.lang.IllegalArgumentException异常
  9. 【python3】 抓取异常信息try/except
  10. 常见的表死锁情况及解决方法