CSLA .NET 10.0.0
A home for your business logic
Loading...
Searching...
No Matches
Csla.Xaml.PropertyInfo Class Reference

Expose metastate information about a property. More...

Inheritance diagram for Csla.Xaml.PropertyInfo:

Public Member Functions

 PropertyInfo ()
 Creates an instance of the object.
 PropertyInfo (bool testing)
 Creates an instance of the object for testing.
virtual void UpdateState ()
 Updates the metastate values on control based on the current state of the business object and property.

Static Public Attributes

static readonly DependencyProperty BrokenRulesProperty
 Gets the broken rules collection from the business object.
static readonly DependencyProperty MyDataContextProperty
 Used to monitor for changes in the binding path.
static readonly DependencyProperty RelativeBindingProperty
 Used to monitor for changes in the binding path.
static readonly DependencyProperty PropertyProperty
 Gets or sets the source business property to which this control is bound.

Protected Member Functions

virtual ? BindingExpression ParseRelativeBinding (BindingExpression? sourceBinding)
 Checks a binding expression to see if it is a relative source binding used in a control template.
virtual void SetSource (bool propertyValueChanged)
 Sets the source binding and updates status.
virtual void SetSource (object? dataItem)
 Sets the source binding and updates status.
object? GetRealSource (object? source, string bindingPath)
 Gets the real source helper method.
PropertyPath? GetRelativePath (object? source, string bindingPath)
 Gets the part of the binding path relevant to the given source.
virtual void OnPropertyChanged (string propertyName)
 Raises the PropertyChanged event.

Properties

ObservableCollection< BrokenRuleBrokenRules [get]
 Gets the broken rules collection from the business object.
object? Source [get, set]
 Gets or sets the Source.
string BindingPath = string.Empty [get, set]
 Gets or sets the binding path.
object? Property [get, set]
 Gets or sets the source business property to which this control is bound.
string FriendlyName [get]
 Gets the friendly name for the property.
string ErrorText [get]
 Gets the validation error messages for a property on the Model.
string WarningText [get]
 Gets the validation warning messages for a property on the Model.
string InformationText [get]
 Gets the validation information messages for a property on the Model.
object? Value [get, set]
 Gets and sets the value of the property on the business object.
bool CanRead [get, protected set]
 Gets a value indicating whether the user is authorized to read the property.
bool CanWrite [get, protected set]
 Gets a value indicating whether the user is authorized to write the property.
bool IsBusy [get]
 Gets a value indicating whether the property is busy with an asynchronous operation.
bool IsValid [get]
 Gets a value indicating whether the property is valid.
RuleSeverity RuleSeverity [get]
 Gets a value indicating the worst severity of all broken rules for this property (if IsValid is false).
string RuleDescription [get]
 Gets the description of the most severe broken rule for this property.
object? CustomTag [get, set]
 Gets or sets an arbitrary value associated with this PropertyInfo instance.

Events

PropertyChangedEventHandler? PropertyChanged
 Event raised when a property has changed.

Detailed Description

Expose metastate information about a property.

Constructor & Destructor Documentation

◆ PropertyInfo() [1/2]

Csla.Xaml.PropertyInfo.PropertyInfo ( )
inline

Creates an instance of the object.

◆ PropertyInfo() [2/2]

Csla.Xaml.PropertyInfo.PropertyInfo ( bool testing)
inline

Creates an instance of the object for testing.

Parameters
testingTest mode parameter.

Member Function Documentation

◆ GetRealSource()

object? Csla.Xaml.PropertyInfo.GetRealSource ( object? source,
string bindingPath )
inlineprotected

Gets the real source helper method.

Parameters
sourceThe source.
bindingPathThe binding path.
Exceptions
ArgumentNullExceptionbindingPath is null.

◆ GetRelativePath()

PropertyPath? Csla.Xaml.PropertyInfo.GetRelativePath ( object? source,
string bindingPath )
inlineprotected

Gets the part of the binding path relevant to the given source.

Parameters
sourceThe source.
bindingPathThe binding path.
Exceptions
ArgumentNullExceptionbindingPath is null.

◆ OnPropertyChanged()

virtual void Csla.Xaml.PropertyInfo.OnPropertyChanged ( string propertyName)
inlineprotectedvirtual

Raises the PropertyChanged event.

Parameters
propertyNameName of the changed property.

◆ ParseRelativeBinding()

virtual ? BindingExpression Csla.Xaml.PropertyInfo.ParseRelativeBinding ( BindingExpression? sourceBinding)
inlineprotectedvirtual

Checks a binding expression to see if it is a relative source binding used in a control template.

Parameters
sourceBindingThe binding expression to parse.
Returns
If the source binding is a relative source binding, this method finds the proper dependency property on the parent control and returns the binding expression for that property.

◆ SetSource() [1/2]

virtual void Csla.Xaml.PropertyInfo.SetSource ( bool propertyValueChanged)
inlineprotectedvirtual

Sets the source binding and updates status.

◆ SetSource() [2/2]

virtual void Csla.Xaml.PropertyInfo.SetSource ( object? dataItem)
inlineprotectedvirtual

Sets the source binding and updates status.

◆ UpdateState()

virtual void Csla.Xaml.PropertyInfo.UpdateState ( )
inlinevirtual

Updates the metastate values on control based on the current state of the business object and property.

Member Data Documentation

◆ BrokenRulesProperty

readonly DependencyProperty Csla.Xaml.PropertyInfo.BrokenRulesProperty
static
Initial value:
= DependencyProperty.Register(
nameof(BrokenRules),
typeof(ObservableCollection<BrokenRule>),
typeof(PropertyInfo),
null)
PropertyInfo()
Creates an instance of the object.
Definition PropertyInfo.cs:48
ObservableCollection< BrokenRule > BrokenRules
Gets the broken rules collection from the business object.
Definition PropertyInfo.cs:115

Gets the broken rules collection from the business object.

◆ MyDataContextProperty

readonly DependencyProperty Csla.Xaml.PropertyInfo.MyDataContextProperty
static
Initial value:
=
DependencyProperty.Register("MyDataContext",
typeof(Object),
typeof(PropertyInfo),
new PropertyMetadata(MyDataContextPropertyChanged))

Used to monitor for changes in the binding path.

◆ PropertyProperty

readonly DependencyProperty Csla.Xaml.PropertyInfo.PropertyProperty
static
Initial value:
= DependencyProperty.Register(
nameof(Property),
typeof(object),
typeof(PropertyInfo),
new PropertyMetadata(new object(), (o, e) =>
{
bool changed = true;
if (e.NewValue == null)
{
if (e.OldValue == null)
changed = false;
}
else if (e.NewValue.Equals(e.OldValue))
{
changed = false;
}
((PropertyInfo)o).SetSource(changed);
}))
Expose metastate information about a property.
Definition PropertyInfo.cs:40
object? Property
Gets or sets the source business property to which this control is bound.
Definition PropertyInfo.cs:301

Gets or sets the source business property to which this control is bound.

◆ RelativeBindingProperty

readonly DependencyProperty Csla.Xaml.PropertyInfo.RelativeBindingProperty
static
Initial value:
=
DependencyProperty.Register("RelativeBinding",
typeof(Object),
typeof(PropertyInfo),
new PropertyMetadata(RelativeBindingPropertyChanged))

Used to monitor for changes in the binding path.

Property Documentation

◆ BindingPath

string Csla.Xaml.PropertyInfo.BindingPath = string.Empty
getsetprotected

Gets or sets the binding path.

The binding path.

◆ BrokenRules

ObservableCollection<BrokenRule> Csla.Xaml.PropertyInfo.BrokenRules
get

Gets the broken rules collection from the business object.

◆ CanRead

bool Csla.Xaml.PropertyInfo.CanRead
getprotected set

Gets a value indicating whether the user is authorized to read the property.

◆ CanWrite

bool Csla.Xaml.PropertyInfo.CanWrite
getprotected set

Gets a value indicating whether the user is authorized to write the property.

◆ CustomTag

object? Csla.Xaml.PropertyInfo.CustomTag
getset

Gets or sets an arbitrary value associated with this PropertyInfo instance.

◆ ErrorText

string Csla.Xaml.PropertyInfo.ErrorText
get

Gets the validation error messages for a property on the Model.

◆ FriendlyName

string Csla.Xaml.PropertyInfo.FriendlyName
get

Gets the friendly name for the property.

◆ InformationText

string Csla.Xaml.PropertyInfo.InformationText
get

Gets the validation information messages for a property on the Model.

◆ IsBusy

bool Csla.Xaml.PropertyInfo.IsBusy
get

Gets a value indicating whether the property is busy with an asynchronous operation.

◆ IsValid

bool Csla.Xaml.PropertyInfo.IsValid
get

Gets a value indicating whether the property is valid.

◆ Property

object? Csla.Xaml.PropertyInfo.Property
getset

Gets or sets the source business property to which this control is bound.

◆ RuleDescription

string Csla.Xaml.PropertyInfo.RuleDescription
get

Gets the description of the most severe broken rule for this property.

◆ RuleSeverity

RuleSeverity Csla.Xaml.PropertyInfo.RuleSeverity
get

Gets a value indicating the worst severity of all broken rules for this property (if IsValid is false).

◆ Source

object? Csla.Xaml.PropertyInfo.Source
getsetprotected

Gets or sets the Source.

The source.

◆ Value

object? Csla.Xaml.PropertyInfo.Value
getset

Gets and sets the value of the property on the business object.

◆ WarningText

string Csla.Xaml.PropertyInfo.WarningText
get

Gets the validation warning messages for a property on the Model.

Event Documentation

◆ PropertyChanged

PropertyChangedEventHandler? Csla.Xaml.PropertyInfo.PropertyChanged

Event raised when a property has changed.


The documentation for this class was generated from the following file: