DiagramDataBindingControllerBase.KeySelector Property

Gets or sets the selector that returns the data field that identifies the data item.

Namespace: DevExpress.XtraDiagram

Assembly: DevExpress.XtraDiagram.v20.1.dll


public virtual IKeySelector KeySelector { get; set; }
Public Overridable Property KeySelector As IKeySelector

Property Value

Type Description

An object implementing the DevExpress.Diagram.Core.IKeySelector interface.


Use the KeySelector property to define a custom logic for choosing the data field that identifies the data item (e.g., when binding to data with multiple types of data objects). To do this, implement the GetKey method of the DevExpress.Diagram.Core.IKeySelector interface, so that it returns the data field that identifies the data item. See the example below.

diagramDataBindingController1.KeySelector = new DatabaseDefinitionKeySelector();
    public class DatabaseDefinitionKeySelector : IKeySelector {
        object IKeySelector.GetKey(object obj) {
            if(obj is TableDefinition)
                return ((TableDefinition)obj).Name;
            else if(obj is ColumnDefinition)
                return ((ColumnDefinition)obj).Id;
            return obj;


See Also