.NET Framework 4.5.2+
.NET Framework 4.5.2+
.NET Standard 2.0+
.NET Core 3.0+

DataSourceCriteriaPropertyAttribute Class

Applied to business classesreference and collection properties. Specifies the name of a CriteriaOperator type property which returns data source’s filter criteria applied to the List View displayed in a Lookup Property Editor or invoked by the LinkUnlinkController.LinkAction Action in a popup window.

Namespace: DevExpress.Persistent.Base

Assembly: DevExpress.ExpressApp.v21.1.dll

Declaration

[AttributeUsage(AttributeTargets.Property, Inherited = true, AllowMultiple = false)]
public sealed class DataSourceCriteriaPropertyAttribute :
    ModelExportedValueAttribute

Remarks

You can filter the data source for the List View displayed in a Lookup Property Editor or in the LinkUnlinkController.LinkAction Action’s popup window. For this purpose, apply the DataSourceCriteriaProperty attribute to the target property. The constructor of this attribute accepts a string name of the CriteriaOperator type property whose value can be calculated in code as required (see DataSourceCriteriaPropertyAttribute.DataSourceCriteriaProperty).

The following example demonstrates how to use the DataSourceCriteriaProperty attribute:

using DevExpress.Data.Filtering;
using DevExpress.Persistent.Base;
using DevExpress.Persistent.BaseImpl;
// ...
[DefaultClassOptions]
public class Order : BaseObject {
    private Accessory fAccessory;
    [DataSourceCriteriaProperty(nameof(DepartmentsCriteria))]
    public Accessory Accessory {
        get { return fAccessory; }
        set {
            SetPropertyValue(nameof(Accessory), ref fAccessory, value);
        }
    }
    public CriteriaOperator DepartmentsCriteria {
        get { return CriteriaOperator.Parse("IsGlobal = true"); }
    }
}
public class Accessory : BaseObject {
    // ...
    private bool fIsGlobal;
    public bool IsGlobal {
        get { return fIsGlobal; }
        set {
            SetPropertyValue(nameof(IsGlobal), ref fIsGlobal, value);
        }
    }
}

DataSourceCriteriaPropertyAttribute overrides DataSourceCriteriaAttribute when both attributes are applied to the same property.

Alternatively, you can use the IModelMember.DataSourceCriteriaProperty and IModelMemberViewItem.DataSourceCriteriaProperty settings that are available in the Application Model for the class members, ListView columns and DetailView items.

Inheritance

Object
Attribute
DevExpress.Persistent.Base.ModelExportedValueAttribute
DataSourceCriteriaPropertyAttribute
See Also