0

我想制作一个treegrid,我遵循了这个示例:

http://www.smartclient.com/smartgwt/showcase/#featured_tree_grid

没有编译错误,但树总是空的:消息是:没有要显示的项目。我应该把datasource.xml放在哪里?我正在使用 eclipse、jboss 和 smartgwt

4

1 回答 1

0

您需要将仅用于客户端的 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.
如果有多个文件,它们将与主源文件一起列为选项卡。

于 2013-07-23T09:36:12.120 回答