What is claimed is:
1. In a server computer coupled to a client computer system, a method of data binding a property of a descendent server-side control object to a property of a data set in a server-side data table having one or more data sets, wherein the descendent server-side control object corresponds to a client-side user interface element, the method comprising:
- iterating over each data set of the server-side data table to create a binding container server-side control object corresponding to each data set;
- associating each binding container server-side control object with one of the data sets of the server-side data table;
- creating a descendent server-side control object for a property of each data set, a given descendent server-side control object being a descendent of the binding container server-side control object corresponding to a given data set and being associated with a property of the given data set; and
- establishing a data binding relationship between the property of the descendent server-side control object and the property of one of the data sets of the server-side data table.
2. The method of claim 1 further comprising:
- loading the server-side data table from a server-side database;
- associating an iterating server-side control object with the server-side data table;
- creating the iterating server-side control object in a server-side control object hierarchy, wherein each binding container server-side control object is a child of the iterating server-side control object; and
- storing the server-side data table as a property of the iterating server-side control object.
3. The method of claim 2 wherein the operation of associating an iterating server-side control object comprises:
- setting a data source property of the iterating server-side control object to reference the server-side data table.
4. The method of claim 2 wherein the iterating operation comprises:
- creating each binding container server-side control element as a child of the iterating server-side control object, each binding container server-side control object being associated with a given data set of the server-side data table.
5. The method of claim 1 wherein the establishing operation comprises:
- creating a binding object including a control identifier of the descendent server-side control object, a first property identifier of the property of the descendent server-side control object, a binding container identifier of the binding container server-side control object, a second property identifier of the property of the data set of the server-side data table.
6. The method of claim 1 further comprising:
- transmitting data stored as the property of the descendent control object for storage as the property of the data set of the server-side data table, based on the data binding relationship.
7. The method of claim 1 further comprising:
- receiving data stored as the property of the of the server-side data table for storage in the property of the descendent control object, based on the data binding relationship.
8. In a server computer coupled to a client computer system, a computer data signal embodied in a carrier wave by a computing system and encoding a computer program for executing a computer process data binding a property of a descendent server-side control object to a property of a data set in a server-side data table having one or more data sets, wherein the descendent server-side control object corresponds to a client-side user interface element, the computer process comprising:
- iterating over each data set of the server-side data table to create a binding container server-side control object corresponding to each data set;
- associating each binding container server-side control object with one of the data sets of the server-side data table;
- creating a descendent server-side control object for a property of each data set, a given descendent server-side control object being a descendent of the binding container server-side control object corresponding to a given data set and being associated with a property of the given data set; and
- establishing a data binding relationship between the property of the descendent server-side control object and the property of one of the data sets of the server-side data table.
9. In a server computer coupled to a client computer system, a computer program storage medium readable by a computer system and encoding a computer program for executing a computer process data binding a property of a descendent server-side control object to a property of a data set in a server-side data table having one or more data sets, wherein the descendent server-side control object corresponds to a client-side user interface element, the computer process comprising:
- iterating over each data set of the server-side data table to create a binding container server-side control object corresponding to each data set;
- associating each binding container server-side control object with one of the data sets of the server-side data table;
- creating a descendent server-side control object for a property of each data set, a given descendent server-side control object being a descendent of the binding container server-side control object corresponding to a given data set and being associated with a property of the given data set; and
- establishing a data binding relationship between the property of the descendent server-side control object and the property of one of the data sets of the server-side data table.
10. A computer program product encoding a computer program for executing on a computer system a computer process for data binding a property of a descendent server-side control object to a property of a server-side data array having one or more data objects, wherein the child server-side control object corresponds to a client-side user interface element, the computer process comprising:
- loading the server-side data array from a server-side database;
- associating an iterating server-side control object with the server-side data table;
- creating the iterating server-side control object in a server-side control object hierarchy;
- storing the server-side data array as a property of the iterating server-side control object;
- create a binding container server-side control object corresponding to one of the data objects, wherein the binding container server-side control object is a child of the iterating server-side control object:
- associating the binding container server-side control object with the one of the data objects of the server-side data array;
- creating a descendent server-side control object for each property of each data object each descendent server-side control object being a descendent of the binding container server-side control object; and
- establishing a data binding relationship between the property of the descendent server-side control object and the property of the server-side data array.
11. The computer program product of claim 10 wherein the operation of associating an iterating server-side control object comprises:
- setting a data source property of the iterating server-side control object to reference the server-side data array.
12. The computer program product of claim 11 wherein the iterating operation of associating the iterating server-side control object comprises:
- creating each binding container server-side control element as a child of the iterating server-side control object, each binding container server-side control object being associated with a given data object of the server-side data array.
13. The computer program product of claim 10 wherein the establishing operation comprises:
- creating a binding relationship object including a control identifier of the descendent server-side control object, a property identifier of the property of the descendent server-side control object, a binding container identifier of the binding container server-side control object, an property identifier of the property of the data object of the server-side data array.
14. The computer program product of claim 10 further comprising:
- sending data stored as the property of the descendent control object for storage as the property of the data object of the server-side data array, based on the data binding relationship.
15. The computer program product of claim 10 further comprising:
- receiving data stored as the property of the data object of the server-side data array for storage in the property of the descendent control object, based on the data binding relationship.
16. A server for performing server-side data binding using a hierarchy of server-side control objects corresponding to client-side user interface elements, the server comprising:
- a server-side data array having one or more data objects, each data object including a property;
- an iterating server-side control object in a server-side control object hierarchy and being associated with the server-side data array;
- one or more binding container server-side control objects iteratively created by the iterating server-side control object based on a number of data objects in the server-side data array;
- one or more descendent server-side control objects corresponding to a property of each data object of the server-side data array, each descendent server-side control being created as a child of the binding control server-side control object of a given data object in the server-side data array; and
- a data binding relationship structure describing a data binding relationship between a property of the descendent control object and the property of the data object of the server-side data array.
17. The server of claim 16 further comprising:
- a push module storing data from the property of the descendent control object to the property of the data object of the server side data array, based on the data binding relationship.
18. The server of claim 16 further comprising:
- a push module storing data from the property of the data object of the server side data array to the property of the descendent control object, based on the data binding relationship.
19. The server of claim 16 further comprising:
- a portion of a server-side datastore loaded into the server-side data array.
20. The server of claim 16 further comprising:
- a portion of a server-side datastore into which the server-side data array is saved.