Skip to main content
All docs
V25.1
  • .NET 8.0+
    • The page you are viewing does not exist in the .NET Framework 4.6.2+ platform documentation. This link will take you to the parent topic of the current section.

    BlazorPropertyEditorBase.ComponentModel Property

    Returns an IComponentModel descendant that wraps properties and events of a corresponding ASP.NET Core Blazor Editor.

    Namespace: DevExpress.ExpressApp.Blazor.Editors

    Assembly: DevExpress.ExpressApp.Blazor.v25.1.dll

    NuGet Package: DevExpress.ExpressApp.Blazor

    Declaration

    public virtual IComponentModel ComponentModel { get; }

    Property Value

    Type Description
    DevExpress.ExpressApp.Blazor.Components.Models.IComponentModel

    A component model of an ASP.NET Core Blazor Editor.

    Remarks

    To customize an ASP.NET Core Blazor Property Editor’s underlying component, call the View.CustomizeViewItemControl method and obtain the component model (the ComponentModel property).

    If the Property Editor you want to customize is based on a single ASP.NET Core Blazor component type, the ComponentModel property returns the corresponding IComponentModel descendant.

    If the Property Editor is based on multiple ASP.NET Core Blazor component types, you need to check the type before you apply changes.

    In the following code sample, ColorPropertyEditor‘s component model is of the DxComboBoxModel<DataItem<Color>, DataItem<Color>> type. StringPropertyEditor‘s component model can be one of 4 types.

    using DevExpress.ExpressApp;
    using DevExpress.ExpressApp.Blazor.Components.Models;
    using DevExpress.ExpressApp.Blazor.Editors;
    // ...
    public class PropertyEditorCustomizeController : ViewController<DetailView> {
        protected override void OnActivated() {
            base.OnActivated();
            View.CustomizeViewItemControl<ColorPropertyEditor>(this, (colorPropertyEditor) => {
                colorPropertyEditor.ComponentModel.CssClass += " custom-class";
            });
            View.CustomizeViewItemControl<StringPropertyEditor>(this, (stringPropertyEditor) => {
                switch(stringPropertyEditor.ComponentModel) {
                    case DxTextBoxModel textBox:
                        textBox.CssClass += " custom-class";
                        break;
                    case DxComboBoxModel<string, string> comboBox:
                        comboBox.CssClass += " custom-class";
                        break;
                    case DxMemoModel memoModel:
                        memoModel.CssClass += " custom-class";
                        break;
                    case DxMaskedInputModel<string> maskedInput:
                        maskedInput.CssClass += " custom-class";
                        break;
                }
            });
        }
    }
    

    For more information about XAF’s built-in Property Editors, refer to the following section: Data Types of Business Class Properties and Built-in Property Editors.

    See Also