Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/gwt/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在GWT中,DataProvider对CellTable到底做了什么_Gwt_Dataprovider_Celltable - Fatal编程技术网

在GWT中,DataProvider对CellTable到底做了什么

在GWT中,DataProvider对CellTable到底做了什么,gwt,dataprovider,celltable,Gwt,Dataprovider,Celltable,我是GWT应用程序开发的初学者。我在网上搜索了有关CellTable的信息。除了一些例子,没有得到任何解释 现在我真的想知道数据提供者在CellTable中到底做了什么? 还想了解更多关于celltable的信息,以及是否有任何资源可用于相同的应用???数据提供商持有您的模型。 无论何时更改模型(例如,映射到cellTable的对象列表),它都将负责更新显示 它充当显示器(cellTable)和模型(即对象列表,通常是来自后端的共享对象列表)之间的控制器 以下是listdataprovider的

我是GWT应用程序开发的初学者。我在网上搜索了有关CellTable的信息。除了一些例子,没有得到任何解释

现在我真的想知道数据提供者在CellTable中到底做了什么?
还想了解更多关于celltable的信息,以及是否有任何资源可用于相同的应用???

数据提供商持有您的模型。 无论何时更改模型(例如,映射到cellTable的对象列表),它都将负责更新显示

它充当显示器(cellTable)和模型(即对象列表,通常是来自后端的共享对象列表)之间的控制器

以下是listdataprovider的示例:

@UiField(provided = true)
protected CellTable<TableRowDataShared> cellTable;

protected ListDataProvider<TableRowDataShared> dataProvider = new ListDataProvider<TableRowDataShared>();

public void init() {
    dataProvider.addDataDisplay(cellTable);
    // init your cellTable here...
}

public void onModelUpdate(List<TableRowDataShared> newData) {
    dataProvider.getList().clear();
    dataProvider.getList().addAll(newData);
    dataProvider.flush();
    dataProvider.refresh();
    cellTable.redraw();
}
@UiField(提供=true)
受保护的单元表单元表;
受保护的ListDataProvider dataProvider=新ListDataProvider();
公共void init(){
dataProvider.addDataDisplay(cellTable);
//在你的手机桌上。。。
}
模型更新时的公共无效(列出新数据){
dataProvider.getList().clear();
dataProvider.getList().addAll(newData);
dataProvider.flush();
dataProvider.refresh();
cellTable.redraw();
}

数据提供者保存您的模型。 无论何时更改模型(例如,映射到cellTable的对象列表),它都将负责更新显示

它充当显示器(cellTable)和模型(即对象列表,通常是来自后端的共享对象列表)之间的控制器

以下是listdataprovider的示例:

@UiField(provided = true)
protected CellTable<TableRowDataShared> cellTable;

protected ListDataProvider<TableRowDataShared> dataProvider = new ListDataProvider<TableRowDataShared>();

public void init() {
    dataProvider.addDataDisplay(cellTable);
    // init your cellTable here...
}

public void onModelUpdate(List<TableRowDataShared> newData) {
    dataProvider.getList().clear();
    dataProvider.getList().addAll(newData);
    dataProvider.flush();
    dataProvider.refresh();
    cellTable.redraw();
}
@UiField(提供=true)
受保护的单元表单元表;
受保护的ListDataProvider dataProvider=新ListDataProvider();
公共void init(){
dataProvider.addDataDisplay(cellTable);
//在你的手机桌上。。。
}
模型更新时的公共无效(列出新数据){
dataProvider.getList().clear();
dataProvider.getList().addAll(newData);
dataProvider.flush();
dataProvider.refresh();
cellTable.redraw();
}

非常清楚。但在使用SimplePage实现分页时是否有必要使用DataProvider?好问题。。。如果您使用的是cellTable,则应使用数据提供程序。如果您使用的是cellList或其他东西,您可以设置自己的数据提供实现。那么SimplePager会工作吗?我想是的,因为数据提供和分页是分开的任务。使用分页时,您只是显示数据的不同部分,但数据保持不变,不是吗?从这一节中我们可以清楚地看到。但在使用SimplePage实现分页时是否有必要使用DataProvider?好问题。。。如果您使用的是cellTable,则应使用数据提供程序。如果您使用的是cellList或其他东西,您可以设置自己的数据提供实现。那么SimplePager会工作吗?我想是的,因为数据提供和分页是分开的任务。使用分页时,您只是显示数据的不同部分,但数据保持不变,不是吗?从本节开始