列表采集器ListPicker在作用上与html中的<select/>标签一样 都是提供多选一功能,区别在于ListPicker可以自定义下拉状态和非下拉状态的样式。

1.模板设置

ListPicker有两个模板属性

  • ItemTemplate 文本框显示的单个选项模板
  • FullModeItemTemplate 所有选项列表的模板

与之相关的还有一个数字类型的属性:ItemCountThreshold

如果ListPicker中的选项数量小于该属性的值的话 则显示方式是普通下拉菜单

    

但如果大于该属性值,则下拉菜单会全屏显示  如下图

回到那两个模板,ItemTemplate 针对的是ListPicker初始状态(点击前 和选中后)及处于下拉菜单状态(即非全屏状态)时每一项

FullModeItemTemplate 这针对的是全屏状态时每一项

注:如果不设定 ItemCountThreshold 则点击后始终是普通菜单而不会全屏

2.Header

ListPicker的标题 如第一个图中的default ,Cities

3.FullModeHeader

全屏状态时顶部的标题 如第三张图中的Cities-Full

4.SelectedIndex

设定或获取选定项的序号

相关代码:

XAML

        <!--定义模板资源-->
<Grid.Resources>
<DataTemplate x:Name="PickerItemTemplate">
<StackPanel Orientation="Horizontal">
<Border Background="Red" Width="34" Height="34">
<TextBlock Text="{Binding Country}" FontSize="16"
HorizontalAlignment="Center" VerticalAlignment="Center" />
</Border>
<TextBlock Text="{Binding Name}" Margin="12 0 0 0" />
</StackPanel>
</DataTemplate>
<DataTemplate x:Name="PickerFullModeItemTemplate">
<StackPanel Orientation="Horizontal" Margin="40 21 0 20">
<TextBlock Text="{Binding Name}" Margin="16 0 0 0" FontSize="43"
FontFamily="{StaticResource PhoneFontFamilyLight}"/>
<TextBlock Text="language: " />
<TextBlock Text="{Binding Language}" Foreground="Brown" />
</StackPanel>
</DataTemplate>
</Grid.Resources> <Grid x:Name="ContentPanel" Grid.Row="1" Margin="12,0,12,0">
<!--未设定模板-->
<toolkit:ListPicker Header="Default" Margin="12,12,12,0" Grid.Row="1" x:Name="defaultPicker" />
<!--点击后全屏-->
<toolkit:ListPicker x:Name="listPickerFull"
ItemTemplate="{StaticResource PickerItemTemplate}"
FullModeItemTemplate="{StaticResource PickerFullModeItemTemplate}"
Grid.Row="0" Header="Cities-Full" Margin="12,110,12,0"
SelectedIndex="2" ItemCountThreshold="3"
FullModeHeader="Cities-Full-Header" CacheMode="BitmapCache"/>
<!--点击后非全屏-->
<toolkit:ListPicker x:Name="listPicker"
ItemTemplate="{StaticResource PickerItemTemplate}"
FullModeItemTemplate="{StaticResource PickerFullModeItemTemplate}"
Grid.Row="0" Header="Cities" Margin="12,210,12,0"
SelectedIndex="2" ItemCountThreshold="5"
FullModeHeader="Cities" CacheMode="BitmapCache"/>
</Grid>

后台代码

namespace Phone.Toolkit.Demo
{
public partial class ListPicker : PhoneApplicationPage
{
public ListPicker()
{
InitializeComponent();
List<Cities> source = new List<Cities>() {
new Cities("Madrid","US","English")
,new Cities("Las Vegas","UK","English")
,new Cities("London","UK","English")
,new Cities("Mexico","MX","Spanish")
};
this.listPicker.ItemsSource = source;
this.listPickerFull.ItemsSource = source;
this.defaultPicker.ItemsSource = new List<string>() { "Madrid", "Las Vegas", "London" };
} }
public class Cities
{
public string Name { set; get; }
public string Country { set; get; }
public string Language { set; get; }
public Cities(string name, string c, string l)
{
this.Name = name;
this.Country = c;
this.Language = l;
}
}
}

WP开发-Toolkit组件 列表采集器(ListPicker)的使用的更多相关文章

  1. javacoo/CowSwing 丑牛迷你采集器

    丑牛迷你采集器是一款基于Java Swing开发的专业的网络数据采集/信息挖掘处理软件,通过灵活的配置,可以很轻松迅速地从 网页上抓取结构化的文本.图片.文件等资源信息,可编辑筛选处理后选择发布到网站 ...

  2. 八爪鱼采集器︱加载更多、再显示20条图文教程(Xpatth、Ajax)

    每每以为攀得众山小,可.每每又切实来到起点,大牛们,缓缓脚步来俺笔记葩分享一下吧,please~ --------------------------- 由于代码布置采集器比较麻烦,又很早知道八爪鱼采 ...

  3. asp.net简述WP开发模式

    详情请参考菜鸟教程:http://www.runoob.com/aspnet/aspnet-tutorial.html 1.ASP.NET 是一个使用 HTML.CSS.JavaScript 和服务器 ...

  4. IhyerDB modBus采集器配置.

    近期查了一下ihyerDB-modbus采集器的相关配置,由于没有相关的modbus设备,于是今天上午根据网上的线索下载了Modbus Slave(modbus从站仿真器).笔记本也没有串口,于是下载 ...

  5. Hawk 3. 网页采集器

    1.基本入门 1. 原理(建议阅读) 网页采集器的功能是获取网页中的数据(废话).通常来说,目标可能是列表(如购物车列表),或是一个页面中的固定字段(如JD某商品的价格和介绍,在页面中只有一个).因此 ...

  6. KnockoutJS 3.X API 第六章 组件(5) 高级应用组件加载器

    无论何时使用组件绑定或自定义元素注入组件,Knockout都将使用一个或多个组件装载器获取该组件的模板和视图模型. 组件加载器的任务是异步提供任何给定组件名称的模板/视图模型对. 本节目录 默认组件加 ...

  7. 火车采集器 帝国CMS7.2免登录发布模块

    帝国cms7.2增加了金刚模式,登录发布有难度.免登录发布模块配合火车采集器,完美解决你遇到的问题. 免登录直接获取栏目列表 通过文件内设置密码免登录发布数据 帝国cms7.2免登陆文章发布接口使用说 ...

  8. 【RSYSLOG】rsyslog作为日志采集器安装配置说明

    RSYSLOG is the rocket-fast system for log processing. About 由于环境基于CentOS 6.7 x64,rsyslog本身就是OS的组件,由于 ...

  9. APlayer组件自制播放器

    .NET中使用APlayer组件自制播放器 2015-02-02 09:46 by xiaozhi_5638, 402 阅读, 9 评论, 收藏, 编辑 目录 说明 APlayer介绍 APlayer ...

随机推荐

  1. HT图形组件设计之道(一)

    HT for Web简称HT提供了涵盖通用组件.2D拓扑图形组件以及3D引擎的一站式解决方案,正如Hightopo官网所表达的我们希望提供:Everything you need to create ...

  2. Ajax学习整理

    什么是ajax?W3School中给ajax的定义是: 1.AJAX = 异步 JavaScript 和 XML. 2.AJAX 是一种用于创建快速动态网页的技术. 3.通过在后台与服务器进行少量数据 ...

  3. AC自动机 - 多模式串匹配问题的基本运用 + 模板题 --- HDU 2222

    Keywords Search Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others)T ...

  4. vs 2010 中类文文件模板的修改

    类模板 文件的修改,以前也修改过,这次有个同事问我,搞了有一会才搞定,这里还是记录分享下. 如果想在每次创建文件时,自动生成文档注释(注意是自动生成文档注释而不是帮助文档),如下面的代码,需要设置VS ...

  5. eclipse中改变默认的workspace的方法及说明

    eclipse中改变默然的workspace的方法可以有: 1.在创建project的时候,手动选择使用新的workspace,如创建一个web project,在向导中的Location选项,取消使 ...

  6. ASP.Net中无刷新执行Session身份验证

    在写一个客户的B/S结构应用程序时,突然发现一个技巧,不知道是否是MS的一个BUG,给相关的有研究的朋友原先考虑写一个检查Session的类,Session失效后,必须转向登陆页面,可每一个调用该类的 ...

  7. 无法将类型为“System.Windows.Controls.SelectedItemCollection”的对象强制转换为类型“System.Collections.Generic.IList`1

    在WPF中DataGrid 选择事件中获取SelectedItems 报错如下 无法将类型为“System.Windows.Controls.SelectedItemCollection”的对象强制转 ...

  8. 【jQuery基础学习】11 jQuery性能简单优化

    关于性能优化 合适的选择器 $("#id")会直接调用底层方法,所以这是最快的.如果这样不能直接找到,也可以用find方法继续查找 $("p")标签选择器也是直 ...

  9. 【jQuery基础学习】09 jQuery与前端(这章很水)

    这章主要是将如何将jQuery应用到网站中,或者说其实就是一些前端知识,对于我这种后端程序来说其实还是蛮有用的. 关于网站结构 文件结构 前端文件分三个文件夹放 images文件夹用来存放将要用到的图 ...

  10. 【jQuery基础学习】04 jQuery中的表格操作及cookie插件的使用

    这章本来准备写成jQuery的表单操作和表格操作的. 然而昨天吧jQuery的表单操作看完,发现全部在炒之前章节的剩饭,所以就没写出来. 那么今天就来看看表格吧. 因为平常做的都是公司的内部管理系统, ...