私は listgrid コントロールを使用して smartgwt プロジェクトに参加しています。リストグリッドを動的な列で埋めるための動的なメカニズムが必要です(列名と列の数は最初から定義できません)。これは完全に動的で、db から来ています。
フィールドの名前とフィールドの数を知らずにリストグリッドを埋めるにはどうすればよいですか。
ListGrid があり、列を動的に追加する場合は、他のすべての列を再作成し、新しい列を追加してから、listGrid.setFields を追加する必要があります。このような:
List<ListGridField> oldColumns; //here you store the old columns
List<ListGridField> newColumns = new ArrayList<ListGridField>(); //here you store the newColumns
for(ListGridField oldField : oldColumns){
ListGridField newField = new ListGridField(oldField.getName(), oldField.getTitle());
newColumns.add(newField);
}
ListGridField field = new ListGridField(newName, newTittle); //Declare the new one
newColumns .add(field);
oldColumns = newColumns;
listGrid.setFields(newColumns); //and your listGrid is updated.