Skip to main content

DevExpress v24.2 Update — Your Feedback Matters

Our What's New in v24.2 webpage includes product-specific surveys. Your response to our survey questions will help us measure product satisfaction for features released in this major update and help us refine our plans for our next major release.

Take the survey Not interested

FavoritePropertyExtension Class

Provides the functionality required to implement a custom storage for favorite properties.

Namespace: DevExpress.XtraReports.Extensions

Assembly: DevExpress.XtraReports.v24.2.dll

NuGet Package: DevExpress.Reporting.Core

#Declaration

public abstract class FavoritePropertyExtension

#Remarks

The End-User Report Designer’s Properties panel provides the Favorite view that allows end-users to display only their favorite or most frequently used properties.

Create a descendant from the abstract FavoritePropertyExtension class to provide a custom storage for favorite properties (such as a desired file on a hard drive, database, cloud or any other location).

Manage all storing and loading logic at the level of the SaveProperties and TryLoadProperties methods. You can also override the GetFavoriteProperties method to write your own logic to obtain control favorite properties (by default, the favorite list includes properties marked with the Favorite attribute).

To register the implemented storage, create its instance and pass it to the static RegisterExtensionGlobal method.

The FavoritePropertyDirectoryExtension class is inherited from the FavoritePropertyExtension class and is intended to manage persisting favorite properties in a file system. By default, these properties are stored in the %localappdata%\Developer Express Inc\XtraReports Suite\ComponentProperties.xml file.

The following code snippet demonstrates how to store the favorite list in the directory with the application’s executable file.

using System.Windows.Forms;
using System.IO;
using DevExpress.XtraReports.Extensions;

static class Program {
    static void Main() {
        // ...
        string path = Path.Combine(Application.StartupPath, "FavoriteProperties.xml");
        FavoritePropertyExtension.RegisterExtensionGlobal(new FavoritePropertyDirectoryExtension(path));
    }
}

See the following topics for more information:

#Inheritance

See Also