SmartClient GWTライブラリを使用しています(ここで Smartclient GWT ショーケースを参照してください)。
レコードをクリックするとフィールドが編集可能になる ListGrid UI を作成しようとしています。例のように:
違いは、独自のカスタム GWT RPC サービスを使用し、ListGridRecord を独自の DataSource に手動で追加していることです。レコードは表示されますが、フィールドをクリックしても編集できません。GWTRPCDataSource 実装を使用してカスタム DataSource を作成し、executeFetch メソッドを適切にオーバーライドしました。
XML DataSource の例を使用して、適切に編集可能に設定された ListGridRecords を作成する特別な処理はありますか?
たとえば、例と同じように CountryXMLDS.java を使用していますが、カスタム レコードを 1 つ追加しています (編集可能にしたい人口フィールド以外のすべてのフィールドを削除しました)。レコードが表示されますが、レコードをクリックしてもフィールドを編集できません。
ListGridField populationField = new ListGridField("population", "population");
populationField.setType(ListGridFieldType.INTEGER);
populationField.setCanEdit(true);
countryGrid.setFields( populationField);
countryGrid.setCanEdit(true);
countryGrid.setEditEvent(ListGridEditEvent.CLICK);
ListGridRecord record = new ListGridRecord();
record.setAttribute("population", "5");
CountryXmlDS.getInstance().addData(record);