我想制作一个treegrid,我遵循了这个示例:
http://www.smartclient.com/smartgwt/showcase/#featured_tree_grid
没有编译错误,但树总是空的:消息是:没有要显示的项目。我应该把datasource.xml放在哪里?我正在使用 eclipse、jboss 和 smartgwt
我想制作一个treegrid,我遵循了这个示例:
http://www.smartclient.com/smartgwt/showcase/#featured_tree_grid
没有编译错误,但树总是空的:消息是:没有要显示的项目。我应该把datasource.xml放在哪里?我正在使用 eclipse、jboss 和 smartgwt
您需要将仅用于客户端的 DataSource 与所需的 .xml 文件一起使用。
datasource.xml 基于示例:
<List>
<employee>
<EmployeeId>4</EmployeeId>
<Name>Charles Madigen</Name>
<Job>Chief Operating Officer</Job>
</employee>
<employee>
<EmployeeId>192</EmployeeId>
<Name>Ralph Brogan</Name>
<Job>Mgr Software Client Supp</Job>
</employee>
</List>
将 datasource.xml 放在 Web 应用程序中可访问的位置。
http://<host>:<port>/testApp/data/datasource.xml
数据源类:
public class EmployeeXmlDS extends DataSource {
public EmployeeXmlDS(String id) {
setRecordXPath("/List/employee"); // <== set proper XPath based on data
// other initialization and DataSourceField creation
setDataURL("data/datasource.xml"); // <== set Data URL based on above location
setClientOnly(true);
}
}
创建树网格:
TreeGrid treeGrid = new TreeGrid();
// treeGrid.set* and other methods
TreeGridField nameField = new TreeGridField("Name", 150);
TreeGridField jobField = new TreeGridField("Job", 150);
treeGrid.setFields(nameField, jobField);
EmployeeXmlDS employeesDS = EmployeeXmlDS.getInstance();
treeGrid.setDataSource(employeesDS); // <== set the data source
注意:上面仅列出了代码的重要部分。
也可以手动将节点添加到树中。
http://www.smartclient.com/smartgwt/showcase/#tree_checkbox
http://www.smartclient.com/smartgwt/showcase/#tree_interaction_drag_reparent
In SmartGWT showcase, when 'View Source' is selected, there could be multiple files related to the sample.
如果有多个文件,它们将与主源文件一起列为选项卡。