私の Vaadin 7 プロジェクトでは、ソート中にツリーテーブルの親ノード (行) を無視する必要があります。ItemSort を使用して並べ替えをカスタマイズできますが、親ノードをスキップする方法がわかりません!
参考までに: 親ノードをその ItemId で識別できます。
***アップデート** _
私は階層コンテナを使用しています。ツリーは次のようになります。
Name Nos salary
+ Male(Node 1) 5 $12000
+ Young 3 $6000
A 1 $3000
B 1 $1000
c 1 $2000
+ Old 2 $6000
A 1 $3000
B 1 $3000
+ Female(Node 2)5 $13000
+ Young 3 $5000
A 1 $2000
B 1 $1000
c 1 $2000
+ Old 2 $8000
A 1 $5000
B 1 $3000
問題は、給与列をソートすると、「男性、若者と老人」、「女性、若者と老人」の行に各人の給与の合計が含まれ、「男性、女性」と「若者、老人」の位置が調整されることですカテゴリ。
カスタムソートで親ノードをスキップしたいだけです。子ノードのみにする必要があります。簡単な言葉で。すべての親ノードを固定する必要があり、子ノードのみを並べ替える必要があります。
更新されたUSECASE
同じ親を持つ 2 つの要素と、それらの 2 つの要素に子ノードがない場合、DefaultItemSorter.compare() を使用しました。そして、他のすべてのユースケースを無視しました。