コンポーネントファセットの使用のためのベストプラクティス
ファセットは、コンポーネントに示されるデータに関するコンテキスト情報を提供する、Visualforce コンポーネント内の 1 つの領域のコンテンツで構成されます。たとえば、<apex:dataTable> はテーブルのヘッダー、フッター、キャプションのファセットをサポートしますが、<apex:column> は列のヘッダーまたはフッターのファセットのみをサポートします。<apex:facet> コンポーネントを使用すると、Visualforce コンポーネントのデフォルトのファセットを独自のコンテンツで上書きできます。ファセットの開始タグと終了タグ内で使用できるのは 1 つの子のみです。
<apex:facet> を定義すると、必ず他の Visualforce コンポーネントの子として使用されます。このファセットの name 属性では親コンポーネントが上書きされる領域を特定します。
例: <apex:dataTable> でのファセットの使用
次のマークアップでは、<apex:dataTable> コンポーネントを <apex:facet> を使用して変更できる方法を示します。
ページは次のように表示されます。
ファセットによる <apex:dataTable> の拡張
<apex:actionStatus> でのファセットの使用
ファセットを使用できる他のコンポーネントは <apex:actionStatus> です。<apex:actionStatus> コンポーネントを拡張することにより、ページが更新されるたびにインジケータを表示できます。たとえば、次のマークアップを使用して進行状況ホイールを定義できます。
関連付けられているコントローラは次のようにカウンタを更新します。
ページは次のように表示されます。
ファセットによる <apex:actionStatus> の拡張