Class PropertyDescriptor
- Namespace
- ReportWright.Design.Properties
- Assembly
- ReportWright.Design.dll
One editable property: where it lives under the item, how it is edited, its allowed values, whether an
expression may stand in for a literal, and the schema versions that know it. This is the hand-maintained
metadata the public RdlSchema lacks (register row U-A1); a test checks every path against the schema.
public sealed class PropertyDescriptor
- Inheritance
-
PropertyDescriptor
- Inherited Members
Constructors
- PropertyDescriptor(string, string, PropertyKind, bool, IReadOnlyList<string>?, ReportSchemaVersion, ReportSchemaVersion?, string?)
Initializes the descriptor.
Properties
- AllowsExpression
Gets whether an expression may replace the literal (A.7.4).
- Description
Gets the help text.
- EnumValues
Gets the allowed values of an enumeration.
- IsAttribute
Gets whether this is the name attribute.
- Kind
Gets how it is edited.
- Label
Gets the label.
- MaximumVersion
Gets the newest version that knows it, or null.
- MinimumVersion
Gets the oldest version that knows the property.
- Path
Gets the path under the item.
- Segments
Gets the path's segments, element names only (a
{Child=Value}predicate stripped).
Methods
- ExistsIn(ReportSchemaVersion)
Whether a document of a schema version knows this property. Versions order newest first in the enumeration, so the comparison is reversed.
- Parse(string, out string?, out string?)
Splits a path segment into its element name and an optional
{Child=Value}predicate, which selects the child whoseChildelement has that value (CustomProperty{Name=Symbology}).
- Read(DesignerDocument, RdlElement)
Reads the property's current text, or null when absent.
- Resolve(DesignerDocument, RdlElement, bool, out string)
The element that holds this property's value, created on demand along the path when
createis set.