Log In
[Expand]General Information
[Expand]WinForms Controls
[Expand]ASP.NET Controls and MVC Extensions
[Expand]ASP.NET Bootstrap Controls
[Expand]ASP.NET Core Bootstrap Controls
[Expand]WPF Controls
[Expand]Xamarin Controls
[Expand]Windows 10 App Controls
[Expand]Document Server
[Expand]Report Server
[Collapse]eXpressApp Framework
 [Expand]Getting Started
  [Expand]Application Solution Components
   Client-Side Mobile Application
  [Expand]Business Model Design
  [Expand]Application Model
  [Collapse]UI Construction
    UI Element Overview
    Windows and Frames
    Action Containers
   [Expand]View Items
    List Editors
    Add and Override Images
    Text Notifications
    Ways to Show a Confirmation Dialog
    ASP.NET Web Application Appearance
    Application Personalization
    Using a Custom Control that is not Integrated by Default
    XAF Mobile Wrappers for DevExtreme Widgets
  [Expand]Extend Functionality
  [Expand]Data Manipulation and Business Logic
  [Expand]Security System
  [Expand]System Module
  [Expand]Extra Modules
  [Expand]Debugging, Testing and Error Handling
  [Expand]Application Life Cycle
 [Expand]Design-Time Features
 [Expand]Task-Based Help
  Frequently Asked Questions (FAQ)
 [Expand]API Reference
[Expand]CodeRush Classic
[Expand]Cross-Platform Core Libraries
[Expand]Tools and Utilities
 End-User Documentation

Using a Custom Control that is not Integrated by Default

XAF is designed as a highly extensible and customizable framework. So, in most cases, the task of integrating a WinForms or an ASP.NET control is quite simple. You can integrate a DevExpress control that is not supported by default, a third-party control, or your own custom control. Generally, you should implement an abstract entity (ListEditor, PropertyEditor or ViewItem) that wraps the control and serves as an adapter for the XAF infrastructure. You can also customize a template and place the control in the desired location. This topic provides a table that helps you choose an appropriate solution, and provides links to relevant examples.

Task Task Details Solution                                                                                                                           
The custom control should visualize a list of business objects (List View). The custom control should be displayed when a user selects an item from the Navigation, executes a PopupWindowShowAction or opens a Detail View of the object that contains a nested collection. For example, you can use an image gallery control to display photos, a map control to display a list of addresses as map markers, etc. Implement a List Editor.
The custom control should visualize an individual object or value returned by a business class property. The custom control should be displayed as a Detail View layout element, or inside a grid cell in a List View. For example, you can use a trackbar control to edit a numeric value, a gauge control to display a numeric value as a circular indicator, a PDF viewer control to preview an attached document, etc. Implement a Property Editor.
The custom control should visualize data that is not bound to any business object or property. The custom control should be displayed as a Detail View or Dashboard View layout element. The control accesses data directly (e.g., it should load an objects collection via an Object Space, fetch data from a web server or load a local file), or simply displays static content. Implement a View Item.
The custom control should be added to the application window outside the View area.   Create a custom Template and drop the control to it.
The custom control should be used in XAF Mobile UI.   Add a custom module for this control (widget).

Expanded Limitations for ASP.NET Controls

ASP.NET controls that use the ClientScriptManager.RegisterStartupScript method cannot be integrated using the examples listed above. If you experience any difficulties when integrating ASP.NET controls, feel free to contact our Support Team.

Is this topic helpful?​​​​​​​