PersistentRepository Class
Stores repository items to be shared between container controls and components (GridControl, TreeList, RibbonControl, BarManager, etc).
Namespace: DevExpress.XtraEditors.Repository
Assembly: DevExpress.XtraEditors.v25.1.dll
NuGet Package: DevExpress.Win.Navigation
Declaration
Related API Members
The following members return PersistentRepository objects:
Remarks
The PersistentRepository class allows you to store repository items and reuse them across container controls.
Repository items added to a container control’s internal collection (for example, EditorContainer.RepositoryItems) cannot be reused. To use one repository item in multiple controls, do the following:
- Declare a
PersistentRepositoryobject. - Create a repository item and add it to the PersistentRepository.Items collection.
- Assign the
PersistentRepositoryobject to a container control’sExternalRepositoryproperty. - Use the container control’s internal mechanisms to bind the repository item to a visual element.
Example
The following example uses a PersistentRepository to reuse a single repository item in a Data Grid and a Tree List.
using DevExpress.XtraEditors;
using DevExpress.XtraEditors.Repository;
public partial class Form1 : XtraForm {
public Form1() {
InitializeComponent();
// Create a persistent repository
PersistentRepository rep = new PersistentRepository();
//Add a repository item to the persistent repository
RepositoryItemSpinEdit spin = new RepositoryItemSpinEdit();
rep.Items.Add(spin);
//Link the persistent repository to controls
gridControl1.ExternalRepository = rep;
treeList1.ExternalRepository = rep;
// Assign the repository item to columns
gridView1.Columns["Id"].ColumnEdit = spin;
treeList1.Columns["Id"].ColumnEdit = spin;
}
}