摘要:
Described are data source objects, which provide data from a resource to an application program, such as a data collection for binding to user interface elements. A data source that matches a resource type is specified by an application program, such as via markup language (e.g., XAML). At runtime, a data source object is instantiated as an indirection between the resource and the application data, e.g., the data collection bound to a user interface element. The data source object retrieves data from the data provider resource via asynchronous and/or background communication operations, and with marshaling the data as necessary to deliver it on the original user interface context. Data sources provide integration to major data models, including CLR objects, XML, Sql/ADO, and WinFS, supporting straightforward declarative and parameterized queries while allowing customized behavior using code for more advanced scenarios. An application can define its own customized data source objects.
摘要:
In an implementation of data binding, a bind object implements an apply-value interface, and a user interface element has a user interface property with an associated value which is designated as the bind object in a markup language. A platform processes the markup language and calls the apply-value interface of the bind object with arguments that include the user interface element and the user interface property to generate an expression such that the associated value of the user interface property can be determined.
摘要:
Systems and methods for providing and associating or combining visual style information with data content. The present invention relates to associating a shared set of style information with two or more objects or items that are to be displayed as part of a list or some other visual grouping of the items. By sharing the style information, i.e., the visual representation characteristics information, a program developer need only define the style information or style once. Upon defining the style, the developer can declaratively associate all the items in the list or group with the defined style.
摘要:
An improved system and method for styling content in a graphical user interface control is provided. An application may define a user interface control having a data object of any type of singular content, including another user interface control. An application may include style declarations that may associate a style resource with the user interface control and a style resource may be dynamically selected for presenting the data object of the user interface control. The style resources may define property values that may be selectively applied to specify a visual representation for the user interface control and data object, such as a visual subtree. A visual representation of the user interface control with the data object may be generated and then a display representation may be rendered for presentation on a user interface display.
摘要:
A data-binding engine is used to perform command binding. A data binding engine binds user interface controls such as buttons, menus, list boxes, etc. to commands exposed on an application model. A data source and data binding path may be specified in a markup language that defines how the commands are bound to UI elements.
摘要:
In an implementation of data association, a data item has a data item property with an associated value and a user interface element has an element property with a value that can be defined by an association to the data item property. A binding definition associates the element property of the user interface element with the data item property such that an application program which generates a user interface for display can be developed independent of the data item, and such that the data item can be developed independent of display-related information corresponding to the user interface element.
摘要:
Systems and methods are provided for virtualizing a user interface. In particular, the present invention relates to providing access to a large amount of data while consuming a relatively small amount of a critical resource. The user interface is virtualized by allocating a critical resource to a relatively small subset of the accessed data at a particular time. For example, virtualization in accordance with the present invention can be applied to an “ItemsControl” control. The “ItemsControl” control can be used to create UI subtrees for those items that are currently visible on the screen, and to discard the subtrees that have gone out of view.
摘要:
Extensible markup language layout and rendering behaviors are disclosed. A core engine provides existing layout and rendering behaviors for a predetermined markup language, such as HTML. External components are designed to provide extended layout and/or rendering behaviors, in addition to the behaviors of the core engine. A mechanism, which can be part of the core engine, extends the existing behaviors with the behaviors of the external components. The behaviors of the external components can participate with the behaviors of the core engine.
摘要:
Described are collection view objects, which provide a user interface view over a data collection, where each view may have its own sort order, filter and/or grouping criteria, as well as current item semantics. A user interface element is bound to a data collection, such as via markup language (e.g., XAML). At runtime, a collection view object is instantiated as an indirection between the data collection and the user interface element, whereby a collection of data items is viewed according to how each collection view object is currently configured with respect to sorting, filtering and/or grouping. Multiple collection views may be specified on the same data collection, whereby distinct simultaneous views of the data items may be presented in different user interface elements. The collection view object dynamically updates the displayed data as changes are made in the data collection. A current item may be selected within the collection view.