XPage コントロールはデータソースの要素にバインドできます。
Domino® 文書データソースを定義すると、
項目にアクセスできるようになります。 これらの項目は
コントロールにバインドできます。 すなわち、ユーザーがコントロールに
入力したデータが、文書の保存時にバインド対象の項目に
割り当てられます。
同様に、文書を取得するときには、
項目の値がバインド対象のコントロールに
割り当てられます。 ソースモードでは、バインドされた項目は、
データソースの名前で始まる EL 式の形をとります。 ここでは、
document1 データソースの
subject 項目に
バインドされた入力ボックスを示します。
<xp:inputText value="#{document1.subject}" id="inputText1"></xp:inputText>
コントロールは、
グローバル変数やスクリプトの戻り値にバインドすることもできます。
[データ] パレット
データソースとその構成項目は、
データパレット () で
確認できます。 データ項目を XPage にドラッグアンドドロップできます。
コントロールが既に存在する場合にデータ項目をドラッグすると、
コントロールがその項目にバインドされます。 例えば、以下の編集ボックスがあり、
まだバインドされていないものとします。
<xp:inputText id="inputText1"></xp:inputText>
document1 の
subject 項目に
ドラッグすると、以下のようになります。
<xp:inputText id="inputText1" value="#{document1.subject}"></xp:inputText>
XPage プロパー (すべてのコントロールの外側) に
データ項目をドラッグした場合は、適切なコンテキストが作成されます。 例えば、
document1 の
subject 項目を XPage プロパーに
ドラッグすると、以下のようになります。
<xp:table>
<xp:tr> <xp:td>
<xp:label value="Subject:" id="subject_Label1" for="subject1"></xp:label>
</xp:td><xp:td>
<xp:inputText value="#{document1.subject}" id="subject1"></xp:inputText>
</xp:td></xp:tr>
</xp:table>
入力ボックスは表の列 2 に設定され、
ラベルが列 1 に入ります。
データパレットの左上には、
[コントロールの
選択] ダイアログボックスの
切り替えスイッチがあります。 デフォルトでは
無効になっています。 (クリックして) 有効にすると、
データ項目を XPage にドラッグしたときに
ダイアログが表示されるようになります。
このダイアログでは以下の操作が可能です。
- コントロールのタイプを変更する。
- タイプが Submit のボタンコントロールを追加する。
- 複数エラー表示コントロールを追加する。
[データ] タブ
バインディングのメカニズムは、Domino 文書項目にバインドできるコントロールの
[データ] タブに
存在します。 ドロップダウンメニューにより、
データソースを選択するか、作成することができます。
別のドロップダウンメニューでは
項目を選択できます。 ほかの場所では、表示形式と書式を確認したり、
デフォルト値を指定したりすることができます。
以下の例では、
入力ボックスコントロールにフォーカスがあります。 ユーザーが
[データ] タブを選択し、
ドロップダウンメニューから
document1 と
number を選択し、
表示形式が
[数値] であることを確認して、
デフォルト値を指定します。
<xp:inputText id="inputText2" value="#{document1.number}" defaultValue="1">
<xp:this.converter>
<xp:convertNumber type="number"></xp:convertNumber>
</xp:this.converter>
</xp:inputText>