[]
        
(Showing Draft Content)

C1.C1Preview.DataBinding.C1DataBinding

C1DataBinding Class

Represents the data binding properties of an databound element in a C1PrintDocument. Properties of this type are DataBinding on RenderObject, and DataBinding on groups of table rows and columns (see TableVector).

Inheritance
C1DataBinding
Namespace: C1.C1Preview.DataBinding
Assembly: C1.PrintDocument.8.dll
Syntax
[C1ClassSerialization(true)]
public class C1DataBinding : IFieldCollectionOwner

Properties

Name Description
DataSource

Gets or sets the data source associated with the current data binding.

Currently objects of the following types can be assigned to this property:

If the data source is an Expression, that expression must evaluate to an instance of a IEnumerable or a DataSet.
Defined

Gets a value indicating that the current data binding is not empty and is linked to some data.

Document

Gets the C1PrintDocument object containing the current data binding.

Fields

Gets the collection of data fields for the current data binding.

Filters

Gets the collection of expressions that are used to filter the data retrieved by the current data binding.

Grouping

Gets the Grouping object that determines how data retrieved by the current data binding is grouped.

Mode

Gets the flags indicating the mode of the current data binding.

Name

Gets or sets the name of the current C1DataBinding. That name can be used in aggregate functions to indicate which data binding the aggregate refers to.

OutlineText

Gets or sets a string defining the Expression used to generate the outline caption for objects produced by the current data binding.

For instance, if a render object is data bound to a data source that contains a field "CustomerName", setting this property to "Customer: [Fields!CustomerName.Value]" will generate an outline node similar to "Customer: John Doe" for each generated instance of the render object.

Parent

Gets the C1DataBinding object which is the parent of the current data binding.

ParentOutline

Gets or sets the parent outline node.

This allows to establish hierarchy of outline nodes for data-bound render object. For instance, the following code:

C1PrintDocument doc = new C1PrintDocument();
RenderTable rtbl = new RenderTable();
doc.Body.Children.Add(rtbl);
doc.Outlines.Add(new OutlineNode("Document root", rtbl));
// set up data binding for rtbl.RowGroups[0,1]...
rtbl.RowGroups[0, 1].DataBinding.DataSource = myDataSource;
rtbl.RowGroups[0, 1].DataBinding.OutlineText = "Customer: [Fields!CustomerName.Value]";
rtbl.RowGroups[0, 1].DataBinding.ParentOutline = doc.Outlines[0];
will add outlines to the data-bound rows of 'rtbl', and will make those outlines children of the 'Document root' outline node.
RowNumber

Gets the current row or group instance number (see remarks).

Sorting

Gets the Sorting object that determines how data retrieved by the current data binding is sorted.

Methods

Name Description
AssignFrom(C1DataBinding)

Assigns (copies) properties from another C1DataBinding to the current object.

IsParentFor(C1DataBinding)

Tests whether the current data binding object is a parent (or a grand- or a deeper-level parent) of another object.

ShouldSerializeFields()

Tests whether the Fields property should be serialized.

ShouldSerializeGrouping()

Tests whether the Grouping property should be serialized.

ShouldSerializeSorting()

Tests whether the Sorting property should be serialized.