Back to Devexpress

EditorsRepositoryBase Class

windowsforms-devexpress-dot-xtraeditors-dot-repository-02f9d783.md

latest4.1 KB
Original Source

EditorsRepositoryBase Class

Implements the basic functionality of the PersistentRepository component.

Namespace : DevExpress.XtraEditors.Repository

Assembly : DevExpress.XtraEditors.v25.2.dll

NuGet Package : DevExpress.Win.Navigation

Declaration

csharp
public class EditorsRepositoryBase :
    ComponentBase,
    IEditorsRepository
vb
Public Class EditorsRepositoryBase
    Inherits ComponentBase
    Implements IEditorsRepository

Remarks

The EditorsRepositoryBase class serves as the base for the PersistentRepository component which contains a collection of repository items that can be shared by different controls and components. The ancestor implements repository item collection management functionality providing the EditorsRepositoryBase.Items property for this purpose. The introduced EditorsRepositoryBase.CollectionChanged and EditorsRepositoryBase.PropertiesChanged events allow bound controls to respond to changes affecting the collection or individual items.

Example

The following example uses a PersistentRepository to reuse a single repository item in a Data Grid and a Tree List.

csharp
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;
    }
}
vb
Imports DevExpress.XtraEditors
Imports DevExpress.XtraEditors.Repository

Public Partial Class Form1
    Inherits XtraForm

    Public Sub New()
        InitializeComponent()
        ' Create a persistent repository
        Dim rep As New PersistentRepository()

        ' Add a repository item to the persistent repository
        Dim spin As 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
    End Sub
End Class

Inheritance

Object MarshalByRefObject Component DevExpress.XtraEditors.ComponentBase EditorsRepositoryBase PersistentRepository

See Also

EditorsRepositoryBase Members

PersistentRepository

DevExpress.XtraEditors.Repository Namespace