Skip to main content

ExpressionEditorControl Class

The Expression Editor in the AutoComplete mode.

Namespace: DevExpress.Xpf.ExpressionEditor

Assembly: DevExpress.Xpf.ExpressionEditor.v26.1.dll

Declaration

public class ExpressionEditorControl :
    Control,
    IAutoCompleteExpressionEditor,
    ISupportExpressionString,
    ICustomExpressionEditor

The following members return ExpressionEditorControl objects:

Remarks

The Expression Editor allows users to create and edit expressions in DevExpress WPF controls (for example, Data Grid). The Expression Editor supports numerous standard functions and operators that allow you to perform different string, date-time, logical, and math operations over data. Read the following help topic to learn more: Invoke the Expression Editor.

ExpressionEditorAutoComplete

The AutoComplete mode supports intelligent code completion, syntax highlighting, and immediate error indication. Read the following help topic for additional information: Expression Editor Capabilities.

The expression editor in AutoComplete mode is an ExpressionEditorControl class instance that is included in the DevExpress.Xpf.ExpressionEditor assembly. If the Global Assembly Cache stores this assembly, the AutoComplete mode is used by default.

Refer to the following help topic to learn more: Expression Editor Customization.

Standalone Mode

You can use the Expression Editor as a standalone control:

  1. Add the control to the window:

    <Window ...
            xmlns:dxexpression="http://schemas.devexpress.com/winfx/2008/xaml/expressioneditor">
        <dxexpression:ExpressionEditorControl Name="editor"/>
    </Window>
    
  2. Use the ExpressionEditorContextHelper.GetContext method to define columns:

    var context = ExpressionEditorContextHelper.GetContext(true, true, true);
    context.Columns.Add(new ColumnInfo("Custom Category") {
        Name = "CustomVariable",
        Description = "Custom variable description",
        Type = typeof(string)
    });
    editor.Context = context;
    editor.EditValue = "CustomVariable + 1";
    
  3. Execute the SaveCommand to update the editor value:

    void Button_Click(object sender, RoutedEventArgs e) {
        editor.SaveCommand.Execute(null);
        MessageBox.Show(editor.EditValue);
    }
    

Prompt to Expression

The AI-powered Prompt to Expression extension converts natural language into valid filter and column expressions for data-aware WPF controls. Users describe the desired behavior using their natural language instead of writing complex expressions:

Sample Filter Expression
Display delayed shipments
Sample Column Expression
Display total cost

The system sends the prompt to the configured AI service that generates a valid expression for the control. The Expression Editor or Filter Editor displays and validates the result immediately.

Run Demo: Prompt to Expression

Refer to the following help topic for additional information: Prompt to Expression.

See Also