渲染GridLayout后如何做某事?

时间:2012-10-10 10:09:06

标签: javascript windows-8 winjs

我在我的Windows8 JavaScript应用程序中使用listView控件,我使用一些代码在页面上呈现项目:

            listView.layout = new ui.GridLayout({
                groupHeaderPosition: "top",
                groupInfo: this.groupInfo,
                itemInfo: this.computeItemSize
            });

现在我想在在页面上呈现这些项目之后执行一些操作。知道我可以为此设置回调吗?

2 个答案:

答案 0 :(得分:0)

创建渲染器有两种方法:声明WinJS.Binding.Template,或创建自定义渲染函数

<强> WinJS.Binding.Template

要创建WinJS.Binding.Template,可以使用HTML标记为项目的呈现方式定义模板。在模板中,您使用数据绑定将HTML元素的属性与数据记录中的字段相关联

自定义渲染功能 您可以定义自定义渲染功能,以将数据记录转换为HTML表示形式。实现自定义渲染器的优点是: 它可以执行定制的元素回收。 它可以提供占位符元素。 它可以逐步渲染项目。 如果需要,它可以对数据进行增量请求。

渲染函数采用以下参数: object renderItem(itemPromise,recycledElement) itemPromise:一个IItemPromise,用于呈现项目的数据。对于同步数据源,IItemPromise通常是完整的,但是使用异步数据源,它将在未来的某个时间完成。 recycledElement:前一项中的DOM,可以重复使用以显示新内容。 render函数必须返回: 项目的DOM树的根元素。 包含以下属性的对象: element:项目的DOM树的根元素,或者完成后将返回项目的根元素的promise。 renderComplete:完全呈现项目时完成的Promise。 链接的完整信息如下 http://msdn.microsoft.com/en-us/library/windows/apps/Hh781224.aspx#displaying_items_with_a_template_or_render_function

希望它有所帮助......谢谢

答案 1 :(得分:0)

在列表视图中,侦听loadingstatechanged事件。

http://msdn.microsoft.com/en-us/library/windows/apps/hh700709.aspx