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

Declaration

[DiagramCategory(DiagramCategory.Data)]
public virtual IKeySelector KeySelector { get; set; }
<DiagramCategory(DiagramCategory.Data)>
Public Overridable Property KeySelector As IKeySelector

Property Value

Type Description
DevExpress.Diagram.Core.IKeySelector

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

Remarks

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;
        }
    }

Implements

DevExpress.Diagram.Core.IDataBindingBehaviorBase.KeySelector
See Also