0

この分類されたビューを、カテゴリ列自体が表示されていないビュー パネルに表示しています。代わりに、viewPanel の上にコンボボックスを表示して、ユーザーが利用可能なすべてのカテゴリから選択できるようにしています (下のスクリーンショットを参照)。コンボは scopeVariable にバインドされ、viewPanel onChange を更新しています。viewPanel には、同じ scopeVar から読み取った計算済みの categoryFilter があります。それはすべてうまくいきます。

ここで、選択リストに追加のワイルドカード (*) 値も実装しました。これは、(選択されている場合) プログラムで cat フィルターを NULL に設定します。このようにして、viewPanel にすべてのエントリを表示させます。繰り返しますが、これは正常に機能しますが、通常はカテゴリ エントリが表示される場所に空の行がビューに表示されるという欠点があります (スクリーンショットでは、各エントリの上に空の行が表示され、カテゴリ「edcom GmbH」の 2 つのエントリが明らかに属しています)。同じカテゴリに; それらは空の行で区切られていません):

ここに画像の説明を入力

これらの空の行を少なくとも非表示にする 1 つの方法は、css コーディングを使用することです。しかし、それらの行がまったくレンダリングされないことをお勧めします。

viewPanel を使用してこれを行うことはできますか? それとも、repeat や dataTable などの他のコントロールを使用する必要がありますか?

前もって感謝します、

ロタール

4

3 に答える 3

3

1つの「ハック」(私が認める醜いもの)は、カテゴリフィルターをに設定する代わりに、分類列をFirmaからFirma:"--All--"またはに変更することです。Firma:"*"NULL you set it to "--All--" (or "*"

ダブルカテゴリはインデクサにヒットしますが、必要なことを実行する必要があります。

于 2012-07-26T03:30:10.173 に答える
0

コンボボックスの値に基づいてビュー名を計算することで、分類されていないビューに切り替えることもできます。

于 2012-07-30T10:37:23.513 に答える
0

明らかに簡単な方法はありません。その間、私はこのcssスタイルのソリューションに固執します:

ビュー パネルと [すべてのプロパティ] - データで、var = "entry" を設定しました。次に、[すべてのプロパティ - スタイリング] で、rowClasses プロパティのプログラム値を設定します。

if(entry.isCategory()){
    return "rowStyleHidden";
}
return "";

スタイル クラス「rowStyleHidden」は、これらの行を非表示にします。

display: none;

これがパフォーマンス的にどのようになるかはまだわかりません。実際のデータベースのコピーに実装したら、これを観察する必要があります。

于 2012-07-26T10:39:36.860 に答える