Back to Devexpress

AppearanceAttribute.FontColor Property

expressappframework-devexpress-dot-expressapp-dot-conditionalappearance-dot-appearanceattribute-ef7b2c3b.md

latest5.8 KB
Original Source

AppearanceAttribute.FontColor Property

Specifies the font color of AppearanceAttribute.TargetItems affected by the conditional appearance rule generated from this attribute instance.

Namespace : DevExpress.ExpressApp.ConditionalAppearance

Assembly : DevExpress.Persistent.Base.v25.2.dll

NuGet Package : DevExpress.Persistent.Base

Declaration

csharp
public string FontColor { get; set; }
vb
Public Property FontColor As String

Property Value

TypeDescription
String

A string specifying the font color of target items affected by the conditional appearance rule. A value should be recognizable by the System.Drawing.ColorConverter class.

|

Remarks

The following UI elements can change their font color:

  • Data cells in a GridListEditor (the font color of the displayed text)
  • Nodes in a TreeListEditor (the font color of the displayed text)
  • Property Editors that are inherited from the DXPropertyEditor type (the font color of the displayed text)
  • StaticText (the font color of the displayed text)
  • Layout Items, Layout Groups and Tabbed Layout Groups (the font color of the caption)

Example 1

The following code snippet changes the Category property in List Views to blue when its value is “Seafood”:

csharp
using DevExpress.ExpressApp.ConditionalAppearance;
//...
[Appearance("CategoryColoredInListView", AppearanceItemType = "ViewItem", TargetItems = "Category",
 Criteria = "Category = 'Seafood'", Context = "ListView", FontColor = "Blue", Priority = 1)]
public class Product : BaseObject {
    public virtual Category Category { get; set; }
}

[DefaultProperty(nameof(Name))]
public class Category : BaseObject {
    public virtual string Name { get; set; }
}

// Make sure that you use options.UseChangeTrackingProxies() in your DbContext settings.
csharp
using DevExpress.ExpressApp.ConditionalAppearance;
//...
[Appearance("CategoryColoredInListView", AppearanceItemType = "ViewItem", TargetItems = "Category",
 Criteria = "Category = 'Seafood'", Context = "ListView", FontColor = "Blue", Priority = 1)]
public class Product : BaseObject {
    public Product(Session session) : base(session) { }
    public Category Category {
        //...
    }
}
[DefaultProperty(nameof(Name))]
public class Category : BaseObject {
    public Category(Session session) : base(session) {}
    public string Name {
        //...
    }
}

Example 2

The following code snippet changes the ProductParameters layout group caption in Product Detail Views to blue when the product’s category is “Seafood”:

csharp
using DevExpress.ExpressApp.ConditionalAppearance;
//...
[Appearance("LayoutGroupColoredInDetailView", AppearanceItemType = "LayoutItem",
 TargetItems = "ProductParametersLayoutGroup", Criteria = "Category = 'Seafood'",
 Context = "Product_DetailView", FontColor = "Blue")]
public class Product : BaseObject {
    public virtual string Name { get; set; }
    public virtual decimal Price { get; set; }
    public virtual ProductStatus Status { get; set; }
    public virtual Category Category { get; set; }
}

[DefaultProperty(nameof(Name))]
public class Category : BaseObject {
    public virtual string Name { get; set; }
}

// Make sure that you use options.UseChangeTrackingProxies() in your DbContext settings.
csharp
using DevExpress.ExpressApp.ConditionalAppearance;
//...
[Appearance("LayoutGroupColoredInDetailView", AppearanceItemType = "LayoutItem",
 TargetItems = "ProductParametersLayoutGroup", Criteria = "Category = 'Seafood'",
 Context = "Product_DetailView", FontColor = "Blue")]
public class Product : BaseObject {
    public Product(Session session) : base(session) { }
    public string Name {
        //...
    }
    public decimal Price {
        //...
    }
    public ProductStatus Status {
        //...
    }
    public Category Category {
        //...
    }
}
[DefaultProperty(nameof(Name))]
public class Category : BaseObject {
    public Category(Session session) : base(session) {}
    public string Name {
        //...
    }
}

Tip

You can find examples of this functionality in the MainDemo demo included with XAF. The demo illustrates various XAF features (including Appearance attribute) and is located in the %PUBLIC%\Documents\DevExpress Demos 25.2\Components\XAF\MainDemo.NET.EFCore folder.

See Also

Conditional Appearance (Manage UI State)

AppearanceItemType

AppearanceAttribute Class

AppearanceAttribute Members

DevExpress.ExpressApp.ConditionalAppearance Namespace