ListViewCustomAppearance
各子がどのように描画されるかだけでなく、子のdomを完全に再構築する場合に便利です。これらのいずれかを作成することにより、選択の処理方法を決定する責任を引き継ぐことになります(com.sencha.gxt.widget.core.client.ListViewCustomAppearance.onSelect(XElement, boolean)
方法を参照)。
ListView
選択を管理する方法をすでに知っているので、これは重要です!さまざまなインタラクションを処理するようにそれ自体を設定および構成し、ListViewSelectionModel
そこでListView
イベントをリッスンできます。
代わりに、データを希望どおりにレンダリングするカスタムCell
(おそらくクラスから開始)を作成することを検討してください。AbstractCell
メソッドをオーバーライドして、render
新しいコンテンツを追加する方法を指定します。
もう1つのヒント-ListViewSelectionModel
ユーザーインタラクションについて取得しようとしているデータの種類によっては、このアイデアがうまくいかない場合があります。代わりに、メソッドをオーバーライドすることも検討してonBrowserEvent
ください。これにより、変更されたアイテムのモデルオブジェクト、(render
メソッドからの)レンダリングされたコンテンツのルートへの参照、およびイベント自体が提供されます。イベントオブジェクトを使用して、何が起こったかを確認します(文字列イベントタイプに対してevent.getType()をテストします)。サブクラスAbstractCell
化するときは、関心のあるイベントをスーパークラスコンストラクターに渡す必要もあります。
ActionCell
これを大まかにする方法のかなり良い例としてチェックしてください。それは再利用できるように十分に抽象的であるように設計されていますが、それはまたそれをより貧弱な例にする傾向があります。