在 Windows Phone 应用程序中使用 Telerik “RadDataBoundListBox”的优势






4.32/5 (5投票s)
在今天的帖子中,我们将快速了解 RadDataBoundListBox,并探讨在 Windows Phone 应用程序中使用它的优势。
我们几乎所有人都在 Windows Phone 应用程序中使用 ListBox
控件来在屏幕上加载大量记录。Telerik 提供了自己的 ListBox
控件,名为“RadDataBoundListBox
”,与默认的 Silverlight ListBox
相比,它具有许多额外的功能和性能优势。
在今天的帖子中,我们将快速了解 RadDataBoundListBox
,并探讨在应用程序中使用它的优势。
参考:在 Windows Phone 应用程序中使用 Telerik “RadDataBoundListBox” 的优势[^]
RadDataBoundListBox 简介
RadDataBoundListBox
是 Telerik Windows Phone 控件库中的一个控件。与默认的 Silverlight 列表框控件相比,此控件具有许多额外的功能。它还具有改进的性能,支持三种不同的数据虚拟化类型,因此可以加载数千个项目而不会影响性能索引。
在 Telerik RadControls 的 Q2.2012 版本 中,他们为该控件添加了一些额外的增强功能,我将在本文中为您介绍。
RadDataBoundListBox
是 Telerik.Windows.Controls.Primitives.dll 的一部分,属于 Telerik.Windows.Controls
命名空间。它提供了项目重新排序、下拉刷新、通过适当的虚拟化包装项目、通过更改方向排序项目、用于从列表中选择项目的复选框、列表项的入/出动画、ListBox
的标题和页脚、通过数据虚拟化按需加载项目等功能。同时,它在数据加载时间、平滑滚动方面有所改进,因此可以加载数千条记录而不会影响性能。
项目重新排序
RadDataBoundListBox
已得到扩展,支持项目重新排序。您可以为 ListBox
控件设置属性来处理项目重新排序,而无需编写额外的代码行。这是 Telerik RadControls for Windows Phone Q2.2012 版本中的一项新增强功能。
可以通过将“IsItemReorderEnabled
”设置为“True
”来启用此功能,控件将自动处理其余事项。此外,您还可以通过内置按钮指定“ItemReorderControlStyle
”来允许用户重新排序项目。用户可以通过按住项目片刻来激活重新排序功能。
下拉刷新数据
开发人员可以通过将“IsPullToRefreshEnabled
”属性设置为“True
”来请求刷新数据。通过使用“RefreshRequested
”事件,开发人员可以高效地处理数据刷新机制。这也是 RadDataBoundListBox
在 Q2.2012 版本中新增的功能。
项目包装
在 Telerik RadControls for Windows Phone 的 Q2.2012 版本中,Telerik 添加了另一项名为“项目包装”的增强功能。开发人员可以轻松设置项目的 WrapMode
。
ListBox 方向
您可以通过设置适当的虚拟化策略定义来设置 ListBox
的方向。以下是一个简短的代码片段,用于演示如何使用虚拟化策略定义来实现适当的方向。
<telerikPrimitives:RadDataBoundListBox.VirtualizationStrategyDefinition>
<telerikPrimitives:WrapVirtualizationStrategyDefinition Orientation="Horizontal"/>
</telerikPrimitives:RadDataBoundListBox.VirtualizationStrategyDefinition>
复选框
Telerik RadDataBoundListBox
提供内置的复选框选择项目功能。当您将“IsCheckModeEnabled
”设置为“True
”时,此功能将添加到您的 ListBox
控件中;当您将“IsCheckModeActive
”设置为“True
”时,将在 ListBox
项目的左侧显示复选框,以便用户可以从列表中选择项目。
项目动画
Telerik 提供用于设置项目添加/删除过渡的适当动画。您可以从多种入/出动画中进行选择。为了向您展示,这里有一个您可以包含在 RadDataBoundListBox
中的简短代码片段,用于项目添加动画。
<telerikPrimitives:RadDataBoundListBox.ItemAddedAnimation>
<telerikCore:RadFadeAnimation StartOpacity="0" InitialDelay="0:0:0.3"
EndOpacity="1" Duration="0:0:0.9">
<telerikCore:RadFadeAnimation.Easing>
<CubicEase EasingMode="EaseOut"/>
</telerikCore:RadFadeAnimation.Easing>
</telerikCore:RadFadeAnimation>
</telerikPrimitives:RadDataBoundListBox.ItemAddedAnimation>
同样,您也可以为列表框指定项目删除动画,使您的应用程序中的列表更具交互性。
按需加载数据
按需加载数据是此列表框控件的另一个出色功能。您可以在 RadDataBoundListBox
控件中执行自动或手动按需数据加载。有四种数据虚拟化模式。以下是该模式的 enum
定义:
public enum DataVirtualizationMode
{
None = 0,
Automatic = 1,
OnDemandManual = 2,
OnDemandAutomatic = 3,
}
您可以将列表框控件的 DataVirtualizationMode
指定为“OnDemandManual
”或“OnDemandAutomatic
”。这将通过使用适当的数据虚拟化来提高列表框的性能。
结束语
因此,您可以轻松理解在 Windows Phone 应用程序中使用 Telerik RadDataBoundListBox
控件的优势。我测试了所述列表框,使用了 2000 多个记录,其性能远远优于 Windows Phone 的默认 Silverlight 列表框控件。
此外,该控件提供了所有模板自定义选项,可为您的应用程序创建令人惊叹的丰富 UI。此外,您可以附加到控件以创建交互式应用程序的内置动画无疑是出色的。当您开始在应用程序中构建此控件时,您将了解更多关于它的信息。
请继续关注我的博客、Twitter、Facebook 和 Google+。另外,别忘了订阅我的博客提要和新闻通讯,直接将更新发送到您的收件箱。祝您编码愉快。干杯!