Associate the Same Data Source with Multiple UI Components"
From Documentation
(moved ZK Developer's Guide/ZK in Depth/Data Binding/Associate the Same Data Source with Multiple UI Components to ZK Developer's Reference/Data Binding/Associate the Same Data Source with Multiple UI Components) |
m |
||
Line 1: | Line 1: | ||
− | + | {{ZKDevelopersGuidePageHeader}} | |
+ | |||
+ | One data source could be associated with multiple UI components. Once the data source had been modified, those associated UI components will be updated automatically by Data Binding Manager. | ||
+ | |||
+ | In the following example. we use ZUML annotation expression to associate a data source, a <tt>Person</tt> instance, "<tt>selected</tt>" with multiple UI components, including <tt>Listbox</tt>, and <tt>Grid</tt>. Once the user selects an item in the <tt>Listbox</tt>, the <tt>Grid</tt> will display information of the selected person accordingly. | ||
+ | |||
+ | <source lang="xml" > | ||
+ | <?init class="org.zkoss.zkplus.databind.AnnotateDataBinderInit"?> | ||
+ | |||
+ | <window width="500px"> | ||
+ | <zscript><![CDATA[ | ||
+ | //prepare the example person | ||
+ | Person selected = new Person(); | ||
+ | ]]> | ||
+ | </zscript> | ||
+ | |||
+ | <listbox rows="4" selectedItem="@{selected}"> | ||
+ | <listhead> | ||
+ | <listheader label="First Name" width="100px" /> | ||
+ | <listheader label="Last Name" width="100px" /> | ||
+ | <listheader label="Full Name" width="100px" /> | ||
+ | </listhead> | ||
+ | <listitem> | ||
+ | <listcell label="George" /> | ||
+ | <listcell label="Bush" /> | ||
+ | </listitem> | ||
+ | <listitem> | ||
+ | <listcell label="Bill" /> | ||
+ | <listcell label="Gates" /> | ||
+ | </listitem> | ||
+ | </listbox> | ||
+ | <!-- show the detail of the selected person --> | ||
+ | <grid> | ||
+ | <rows> | ||
+ | <row> | ||
+ | First Name: | ||
+ | <textbox value="@{selected.firstName}" /> | ||
+ | </row> | ||
+ | <row> | ||
+ | Last Name: | ||
+ | <textbox value="@{selected.lastName}" /> | ||
+ | </row> | ||
+ | </rows> | ||
+ | </grid> | ||
+ | </window> | ||
+ | </source> | ||
+ | |||
+ | |||
+ | =Version History= | ||
+ | {{LastUpdated}} | ||
+ | {| border='1px' | width="100%" | ||
+ | ! Version !! Date !! Content | ||
+ | |- | ||
+ | | | ||
+ | | | ||
+ | | | ||
+ | |} | ||
+ | |||
+ | {{ZKDevelopersGuidePageFooter}} |
Revision as of 04:38, 18 January 2011
This documentation is for an older version of ZK. For the latest one, please click here.
One data source could be associated with multiple UI components. Once the data source had been modified, those associated UI components will be updated automatically by Data Binding Manager.
In the following example. we use ZUML annotation expression to associate a data source, a Person instance, "selected" with multiple UI components, including Listbox, and Grid. Once the user selects an item in the Listbox, the Grid will display information of the selected person accordingly.
<?init class="org.zkoss.zkplus.databind.AnnotateDataBinderInit"?>
<window width="500px">
<zscript><![CDATA[
//prepare the example person
Person selected = new Person();
]]>
</zscript>
<listbox rows="4" selectedItem="@{selected}">
<listhead>
<listheader label="First Name" width="100px" />
<listheader label="Last Name" width="100px" />
<listheader label="Full Name" width="100px" />
</listhead>
<listitem>
<listcell label="George" />
<listcell label="Bush" />
</listitem>
<listitem>
<listcell label="Bill" />
<listcell label="Gates" />
</listitem>
</listbox>
<!-- show the detail of the selected person -->
<grid>
<rows>
<row>
First Name:
<textbox value="@{selected.firstName}" />
</row>
<row>
Last Name:
<textbox value="@{selected.lastName}" />
</row>
</rows>
</grid>
</window>
Version History
Version | Date | Content |
---|---|---|