0

私は現在、グループを含むリストボックスを備えたZK画面で作業しています。(私が知る限り)DataBinderを使用してGroupsModelでモデルを設定することはできないため、手動で作成してsetModelを呼び出しています。ListgroupsとListitemsを構成するには、ListitemRendererを作成する必要があります。

問題は、画面上でグループを開いたり閉じたりするたびに、サーバーと通信してグループを開いているように設定し、表示されているすべての行に対してListitemRendererを再度呼び出すことです。これにより、ユーザーのインターフェイスが遅くなります。

ZKにクライアント上のリストグループとリストアイテムのコンテンツをキャッシュさせて、グループの開閉がサーバーと通信せず、すべての行を再度レンダリングしないようにすることは可能ですか?このシステムでは、ユーザーが別の検索を実行するか、アイテムをドラッグアンドドロップするまで、行の内容は変更されません。

編集:リストグループとリストアイテムを自分で作成し、appendChildで追加することになりました。モデルやレンダラーは必要ないため、すべてがクライアントで行われるため、非常にスッキリします。ただし、モデル/レンダラーを使用してどのように実行できるかを知っておくと便利です。

4

1 に答える 1

1

renderall()メソッドを使用することをお勧めします。

例:myListbox.getItemRenderer()。renderAll()

IMO、モデルに大量のデータが含まれている場合、このアクションはデフォルトのアクションよりも遅くなる可能性があります。

于 2010-11-19T07:04:50.767 に答える