Skip to main content

DevExpress v24.2 Update — Your Feedback Matters

Our What's New in v24.2 webpage includes product-specific surveys. Your response to our survey questions will help us measure product satisfaction for features released in this major update and help us refine our plans for our next major release.

Take the survey Not interested

ExpressionEditorControl Class

The Expression Editor in the AutoComplete mode.

Namespace: DevExpress.Xpf.ExpressionEditor

Assembly: DevExpress.Xpf.ExpressionEditor.v24.2.dll

NuGet Package: DevExpress.Wpf.ExpressionEditor

#Declaration

public class ExpressionEditorControl :
    Control,
    IAutoCompleteExpressionEditor,
    ISupportExpressionString

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);
    }
    
See Also