Skip to main content

IEditSettings.ReadOnly Property

Specifies whether a user can change an editor’s value.

Namespace: DevExpress.Blazor

Assembly: DevExpress.Blazor.v24.1.dll

NuGet Package: DevExpress.Blazor

Declaration

[DefaultValue(null)]
[Parameter]
bool? ReadOnly { get; set; }

Property Value

Type Default Description
Nullable<Boolean> null

true to prevent users from changing the editor value; false to allow users to change the editor value; null to inherit the value from the DxGridDataColumn.ReadOnly property.

Property Paths

You can access this nested property as listed below:

Object Type Path to ReadOnly
GridCustomizeCellEditorEventArgs
.EditSettings .ReadOnly
GridCustomizeFilterRowEditorEventArgs
.EditSettings .ReadOnly
TreeListCustomizeCellEditorEventArgs
.EditSettings .ReadOnly
TreeListCustomizeFilterRowEditorEventArgs
.EditSettings .ReadOnly

Remarks

In read-only mode, the editor displays a value but does not allow users to change it.

Use the ReadOnly property to enable or disable the read-only mode at runtime. To activate or deactivate this mode in markup, use the DxEditSettings.ReadOnly property.

Note that the ReadOnly property does not affect the editor displayed in the filter row. To hide the filter row editor, set the FilterRowEditorVisible property to false.

The IEditSettings interface allows you to get and customize editor settings. You can get editor settings in the following ways. Note that you can cast settings to the base IEditSettings interface or to an editor-specific interface.

  • Call the GetColumnEditSettings method to get editor settings of the column bound to the specified data source field.

    Important

    You need to enclose your code between BeginUpdate and EndUpdate method calls to change values of Grid component parameters outside the Grid component markup. Otherwise, an exception occurs.

    var productEditSettings = e.Grid.GetColumnEditSettings<IEditSettings>("ProductID");
    // or var productEditSettings = e.Grid.GetColumnEditSettings<ISpinEditSettings>("ProductID");
    if(productEditSettings != null) {
        e.Grid.BeginUpdate();
        productEditSettings.ReadOnly = true;
        e.Grid.EndUpdate();
    }
    
  • Handle the CustomizeFilterRowEditor event to customize a cell editor in the filter row.
    void Grid_CustomizeFilterRowEditor(GridCustomizeFilterRowEditorEventArgs e) {
        if(e.EditSettings is IEditSettings productEditSettings)
        // or if(e.EditSettings is ISpinEditSettings productEditSettings)
            productEditSettings.ReadOnly = true;
    }
    
  • Handle the CustomizeDataRowEditor event to customize a cell editor in a data row.
    void Grid_CustomizeDataRowEditor(GridCustomizeDataRowEditorEventArgs e) {
        if(e.EditSettings is IEditSettings productEditSettings)
        // or if(e.EditSettings is ISpinEditSettings productEditSettings)
            productEditSettings.ReadOnly = true;
    }
    
See Also