ListPicker控件使用
来源:互联网 发布:淘宝弓 编辑:程序博客网 时间:2024/06/11 14:40
ListPicker控件,从外形上看有点像ComboBox,主要的功能也是可以在多个项目中来选择一个项目,如下图,在平常状态下,看到的是跟一般的文字框相同(如图1),而展开后就会出现项目列表(如图2)。
图1 ListPicker控件显示 图2 ListPicker控件展开时
下面我们来看一下这个例子的具体实现。步骤很简单,首先,需要将ListPicker控件添加到MainPage中去。设置ListPicker的属性:
<toolkit:ListPicker Header="Default" Height="229" Name="defaultPicker" Width="414" />
从上边的代码可以看到,Header在控件中的显示位置。
在MainPage.xaml.cs文件中添加代码:
this.defaultPicker.ItemsSource = new List<String>() { "London", "China", "Mexico" };
这里添加的就是要填充到ListPicker中的内容。
这两步完成之后,运行后的效果就如图上所示。
关于第二步代码的添加,还有另外的两种方法:
1. 使用ListPicker.Items.Add方法
this.defaultPicker.Items.Add("London");
this.defaultPicker.Items.Add("China");
this.defaultPicker.Items.Add("Mexico");
2. 将这部分的实现放在MainPage.xaml中去
xmlns:sys="clr-namespace:System;assembly=mscorlib"
<toolkit:ListPicker Header="Default" Height="229" Name="defaultPicker" Width="414">
<sys:String>London</sys:String>
<sys:String>China</sys:String>
<sys:String>Mexico</sys:String>
</toolkit:ListPicker>
这里需要注意的是,在放置ListPicker控件时,需要将下方拉大些,留下足够的空间来显示列表中的内容,否则list中内容无法显示或显示不全。
当展开的ListPicker中项目的数量超过5个时,ListPicker会自动地以整页的模式来显示待选的项目,这样可以有更多的显示空间,在项目的选择上也会更加的方便。
下面我们来实现一个颜色选择的ListPicker。List的显示,除了文字外,前边加上对应的颜色矩形框。
首先,添加ListPicker控件到界面,设置FullModeItemTemplate,ItemTemplate属性。
<toolkit:ListPicker Header="Full ListPicker" Height="217" Name="listPicker1" Width="410" ItemsSource="{Binding}">
<toolkit:ListPicker.FullModeItemTemplate>
<DataTemplate>
<StackPanel Orientation="Horizontal">
<Rectangle Fill="{Binding}" Width="40" Height="40" Margin="10, 10, 10, 10"/>
<TextBlock Text="{Binding}" VerticalAlignment="Center"/>
</StackPanel>
</DataTemplate>
</toolkit:ListPicker.FullModeItemTemplate>
<toolkit:ListPicker.ItemTemplate>
<DataTemplate>
<StackPanel Orientation="Horizontal">
<Rectangle Fill="{Binding}" Width="40" Height="40" Margin="10, 10, 10, 10"/>
<TextBlock Text="{Binding}" VerticalAlignment="Center"/>
</StackPanel>
</DataTemplate>
</toolkit:ListPicker.ItemTemplate>
</toolkit:ListPicker>
其次,建立一个表示颜色的字符串数组:
static readonly string[] AccentColors = { "magenta", "purple", "teal", "lime", "brown", "pink", "orange", "blue", "red", "green" };
this.listPicker1.DataContext = AccentColors;
这样,运行程序,效果如下图:
这里默认的超过5项时全屏的模式,有一个属性ItemCountThreshold,设置它的值可以改变这个规则,当ItemCountThreshold="2"时,list中的内容超过2个时,就会以全屏模式显示。
SelectedIndex,用来规定当前显示的为所选择List中的第几个,从0开始。
最后通过在相应按钮事件时获得所选的项!通过以下方法获得
Class ci = (Class)listPicker1.SelectedItem;
注*:Class为在向listPicker1绑定数据时所使用的类名,通过调用SelectedItem,返回一个object对象。再强制转为对应的子类!
接着就可以使用 ci.属性。获得所要的值;
textBlock1.Text = ci.name;
- ListPicker控件使用
- ListPicker控件使用
- Silverlight toolkit 中ListPicker控件的用法
- wp8 中ListPicker控件的学习
- Windows Phone开发之ListPicker的使用
- <WP7>(五)手把手教你写天气预报程序:ApplicationBar的使用和ListPicker的数据绑定
- ListPicker设置默认选中item
- [WP7]ListPicker for WP7 in depth
- 自动调整toolkit:ListPicker大小xaml
- wp7中关于ListPicker的ItemSource的一个疑问
- Listpicker with button in full mode in WP7
- 控件使用
- 控件使用
- 控件使用
- 控件使用
- 控件使用
- CListCtrl控件控件的使用
- 控件treeview的使用
- chrome浏览器的快捷键
- ios学习--SQLite常用函数
- python-上传样本到virustotal,查询扫描信息
- 如何消除 sql server 2008 查询语句的红色波浪线
- Java学习之路 --The Road Of Java Study
- ListPicker控件使用
- POM详解
- Drawable Mutations(Android Drawable 深入分析)
- C++修饰构造函数的explicit关键字
- struts-config.xml中的简单配置
- linux下gdb调试
- 关于initramfs启动问题.
- 关于UTF-8, GB2312 JBoss,JSP,EJB,MySQL,STRUTS的中文解决方案
- 6年软件开发经验总结