1

ListGrid を拡張して、パブリックかプライベートかにかかわらず、検索の種類ごとにグループ化された保存済み検索のリストを作成しました。このリストは、標準の SmartGWT データソースを通じて入力されます。

さらに、このリストに履歴検索のグループを追加したいと思います。これは、ユーザーがセッションごとに検索を作成するときに使用できるようになります (つまり、ユーザーは新しい検索を作成します。その検索は、グループ化された「履歴検索」の下の検索リストに表示されます)。

簡単に言えば、既存のデータソースと、理想的にはメモリに保存された RecordList の 2 つの別々のソースから ListGrid を作成できるようにしたいと考えています。私はこれに似たものを試しました:

@Override
public void fetchData() {
    invalidateCache();
    discardAllEdits();
    super.fetchData();
    setCanEdit(true);
    for(Record r : histSearches.toArray()) {
        startEditingNew(r);
        endEditing();
    }
    setCanEdit(false);
    markForRedraw();
};

このコードは実行されますが、私が望んでいる機能はまったく実行されません。この機能を実行する方法について何か提案はありますか? どんな助けでも大歓迎です。

4

1 に答える 1

2

DataSource.fetchData() を呼び出すと、コールバックで選択したデータを RecordList として取得できます。その後、recordList.add() を介してセッションごとの検索を追加し、setData() を介して変更された RecordList を ListGrid に提供できます。

ちなみに、保存された検索のサンプル実装を示す公開 wiki の記事もあります (ただし、必要なものとは異なります)。

http://wiki.smartclient.com/display/Main/Saved+Search+%28Smart+GWT%29

于 2012-09-29T06:00:19.687 に答える