vaadin-girdを使用しているときに奇妙な動作が発生しています。私は、グリッド(gRegisteredRecords)内の選択された行からの情報をLinkedHashMapsのarrayListに格納しようとしています。何らかの理由で、最初のボタンbtnGenerateXMLをクリックすると、getSelectedRows()メソッドは空のリストを返しますが、2番目のメソッドは正常に動作します...なぜ最初の試みでは機能しませんか?ここにコードです..ありがとう!Vaadin Gird getSelectedRows()は空を返しますが、選択された行があります
_btnGenerateXML.addClickListener(p -> {
ArrayList <LinkedHashMap<String, String >> alSelected = new ArrayList<>();
for (Object itemId: gRegisteredRecords.getSelectedRows()) {
LinkedHashMap<String, String> lhmProgrammValue = new LinkedHashMap<>();
this.gRegisteredRecords.getContainerDataSource().
getContainerPropertyIds().forEach(propertyId ->
lhmProgrammValue.put(propertyId.toString(),
this.gRegisteredRecords.getContainerDataSource()
.getItem(itemId)
.getItemProperty(propertyId)
.getValue().toString()));
alSelected.add(lhmProgrammValue);
}
}
}