A collection of awesome XAF resources.
eXpressApp Framework (XAF) is a modern and powerful application framework allowing simultaneous ASP.NET, Blazor and WinForms development. Its modular design allows developers to choose from the built in modules, or create their own, to build applications faster and in a more robust manner than they do today.
Contributions are always welcome! Please take a look at the contribution guidelines pages first. Thanks to all future contributors, you're awesome and wouldn't be possible without you!
- Introduction
- General
- Sample Projects
- Demos
- Modules
- Videos
- Blogs
- Podcasts
- Presentations slides
- Tooling
- Books
- Courses
- Community
- Other Languages
- Deployment Tutorial
- How Tos
- Frequently Asked Questions (FAQ)
eXpressApp Framework (XAF) is a modern and powerful application framework allowing simultaneous ASP.NET, Blazor and WinForms development. Its modular design allows developers to choose from the built in modules, or create their own, to build applications faster and in a more robust manner than they do today. More information on the official XAF website.
To get started with XAF, follow the instructions in the XAF Get Started documentation.
- Documentation - Official documentation, by DevExpress.
- Sample Proyects-Official Sample Proyects, by DevExpress.
- DevExpress Built in modules
- Llamachant modules
- eXpand Framework
- XAFARI
- SenDev XAF Dashboards
- Ultra modules
- Xenial Framework
- DevExpress Youtube Channel
- Joche Ojeda Youtube Channel
- Jose Javier Columbie Youtube Channel
- Building A CRM App Using XAF With Dave & Adam
- AuditTrail and Business Class Library Customization.
- Clone Object
- Conditional Appearance
- Dashboards
- File Attachments
- Charts
- AutoCommit, CloneMemberValue, CloneModelView, MasterDetail and OneView
- April 9th 2020 - First Meeting
- May 14th 2020 - Blazor
- June 11th 2020 - Live QnA
- July 9th 2020 - Best Practices
- August 13th 2020 - Testing and DevOps
- September 10th 2020 - What is XAF? XPO? Why should I care?
- October 8th 2020 - QnA
- DevExpress Blog
- Joche Ojeda Blog
- Manuel Grundner Blog
- Jose Javier Columbie Blog
- Dennis Old Blog -Not Active but a lot of great content
- A.Bekiaris's Old Blog -Not Active but a lot of great content
- Robert Anderson Blog -More XAF content coming soon
- Framework Series: The eXpand Framework with Apostolis Bekiaris - THE HANSELMINUTES PODCAST.
- OLIVER STURM ON THE EXPRESS APPLICATION FRAMEWORK - DEVEXPRESS – TECHSUMMIT 2007.
- XPO Web API - Slides from Community Standup.
- CodeRush Snippets For Connection Strings
- BitFrameworks CodeRush ConnectionString Templates for XAF y XPO
- Llamachant Code Snippets
- Patterns of Enterprise Application Architecture - by Martin Fowler
- XAF/XPO Courses - XAFers Training
- XAF/XPO Training - Llamachant
- Community - Official Community Page.
- XAF on Twitter - Official DevExpress XAF Framework Twitter feed.
- Gitter - XAF discussion on Gitter.
- Facebook - Facebook Group.
- Meetup - Arizona XAFers User Group.
- LinkedIn - LinkedIn Group.
- Stack Overflow - XAF questions feed on Stack Overflow.
- Twitter - Hashtag on Twitter.
- XAFers Weekly - Weekly Newsletter.
- Unit Tests - Official Documentation.
- Easy Test - Official Documentation.
- T is for Testing - Manuel Grundner - DevExpress MVP.
- Tasty, Delicious Dot Net Testing - Manuel Grundner - DevExpress MVP.
- How to: Localize an XAF Application - Official Documentation
- Simple Localization Demo - Youtube
- DevExpress Official Page - You need to scroll up a bit
- BiTFrameworks - Joche Ojeda -DevExpress MVP.
- Manuel Code and Consult - Manuel Grundner - DevExpress MVP
- Llamachant - LLamachant - Dave and Adam - DevExpress MVPs
- Jose Javier Columbie Youtube Channel - [Spanish]
- Joche Ojeda Youtube Channel - [Spanish]
- How to measure and improve performance-by DevExpress.
- How to review XAF WorkflowServer performance?-by DevExpress.
- How to: Create a correct connection string for XPO providers-by DevExpress.
- How to: Create a Business Model in the XPO Data Model Designer-by DevExpress.
- Generating Persistent Objects for Existing Data Tables-by DevExpress.
- How to: Create and use the JoinOperand using LINQ to XPO and Criteria Operators-by DevExpress.
- How XPO supports delayed loading of objects and properties-by DevExpress.
- How to: Prevent XPO from making any changes to a legacy database-by DevExpress.
- How to: Connect different XPO data models to several databases within a single application-by DevExpress.
- How to: Change connection to the database at runtime-by DevExpress.
- How to: Store file attachments in the file system instead of the database (XPO)-by DevExpress.
- How to establish association from one class to many classes
- How to: Initialize Business Objects with Default Property Values in XPO
- How to enable delayed loading of images in XPO
- How to: Use both Entity Framework and XPO in a Single Application
- How to: Initialize Business Objects with Default Property Values in Entity Framework
- How to use the Workflow Module with the Entity Framework data model
- How to enable delayed loading of images in Entity Framework
- How to: Use both Entity Framework and XPO in a Single Application
- Ways to: Show a View-by DevExpress.
- How to: Display Several Views Side-by-Side-by DevExpress.
- Ways to: Access UI Elements and Their Controls-by DevExpress.
- How to: Customize the Application UI and Behavior-by DevExpress.
- View Items Layout Customization-by DevExpress.
- How to: Determine the View, from which another view is shown-by DevExpress.
- How to: Apply Conditional Appearance-by DevExpress.
- How to: Implement a Custom Messaging Class-by DevExpress.
- How to: access a nested ListView from the parent DetailView's controller and vice versa-by DevExpress.
- How to: Adjust the size of pop up dialogs-by DevExpress.
- How to: Access a tab control in a Detail View layout-by DevExpress.
- How to: Save and share custom view settings-by DevExpress.
- How to: Change the application logo-by DevExpress.
- How to: Programmatically select a record in the lookup-by DevExpress.
- How to: Provide a specific View layout for users of certain security roles-by DevExpress.
- How to access the DocumentManager, BarManager and RibbonControl
- How to: Implement Custom Context Navigation
- How to: Include an Action to a Detail View Layout
- How to: Create a Predefined Dashboard and Add it to the Navigation-by DevExpress.
- How to: Establish a connection to a PostgreSQL database from the Dashboard Designer-by DevExpress.
- How to: Display a List View as a Chart-by DevExpress.
- How to: Merge reports in XAF-by DevExpress.
- How to: Create a recurring appointment via code-by DevExpress.
- How to: Display a List View as a Chart-by DevExpress.
- How to: Open DetailView by clicking a grid row in the integrated Dashboard-by DevExpress.
- How to: Import data in XAF
- How to: Implement dependent views in a DashboardView (filter based on selection)-by DevExpress.
- How to: Print a report without displaying a preview-by DevExpress.
- How to: Customize the ReportDataV2 Class
- How to: Filter a Report Parameter's Lookup
- How to: Execute a Stored Procedure from the Workflow Activity
- How to create and setup an XtraReport report for exporting to a Stream in a non-XAF application
- How to allow users to create filter via the criteria editor before previewing a report
- How to use the File Attachment Module with a legacy database
- How to make PivotGrid fields invisible when the Analysis view is initialized
- How to: Build Criterias-by DevExpress.
- How to: Implement Cascading Filtering for Lookup List Views-by DevExpress.
- How to: Set different criteria for a base lookup property in descendant classes-by DevExpress.
- How to: Use Function Criteria Operators to Filter List Views-by DevExpress.
- How to: Use Criteria Property Editors-by DevExpress.
- How to: Show filter dialog before showing ListView-by DevExpress.
- How to sort a ListView in code
- How to: Implement Custom Security Objects(Users, Roles, Operation Permissions)-by DevExpress.
- How to: Implement a Custom Security System User Based on an Existing Business Class-by DevExpress.
- How to: hide navigation items based on the current user-by DevExpress.
- How to: Get the Current User in Code-by DevExpress.
- How to: Change the SecuritySystem type at runtime-by DevExpress.
- How To: Implement a custom security operation that can be permitted at the type level-by DevExpress.
- How to: Allow a user to select the authentication type at runtime-by DevExpress.
- How to: Enforce password complexity in XAF-by DevExpress.
- How to: Use the Integrated Mode of the Security System in Non-XAF Applications-by DevExpress.
- Permissions for Aggregated Objects
- How to: Create a Custom WinForms Ribbon Template-by DevExpress.
- How to: Distribute Custom Templates with Modules-by DevExpress.
- How to: Show a Custom Window with an Embedded XAF View-by DevExpress.
- Customization Form-by DevExpress.
- How to: Access the WinForms Dashboard Designer-by DevExpress.
- How to: Use Map Control-by DevExpress.
- How to Use the Gantt Control to Display a List of Tasks in XAF WinForms Apps-by DevExpress.
- How to: Use a Custom Form as a Splash Screen-by DevExpress.
- How to: use a custom Lookup Property Editor control for reference properties in WinForms-by DevExpress.
- How to: Integrate Snap reports in XAF WinForms-by DevExpress.
- How to: Show a custom form as the WinForms Dashboard Designer-by DevExpress.
- TreeListEditor - How to enable in-place editing in the WinForms tree List View (XPO)-by DevExpress.
- How to: Use the Workflow Module
- How to: Access the Navigation Dock Panel (in a WinForms application)
- How to: Create a Custom a WinForms Standard Template
- How to: Add a button to a Form using Custom View Item
- How to: Customize an ASP.NET Template-by DevExpress.
- How to: Use Custom Themes in ASP.NET Applications-by DevExpress.
- How to: Use Google, Facebook and Microsoft accounts in ASP.NET XAF applications (OAuth2 demo)-by DevExpress.
- How to: Enable in-place editing in the ASP.NET tree List View (ASPxTreeListEditor)-by DevExpress.
- How to: Create a custom Action with a custom control in XAF ASP.NET application-by DevExpress.
- How to: Edit Non-Persistent Objects nested in a Persistent Object-by DevExpress.
- How to: Edit a collection of Persistent Objects linked to a Non-Persistent Object-by DevExpress.
- How to: Access Business Class Metadata-by DevExpress.
- How to: Access the Master Object from the Nested List View-by DevExpress.
- How to: Represent a collection property using a checked list box-by DevExpress.
- How to: Add a custom button into LookupPropertyEditor to edit the currently selected record-by DevExpress.
- How to: Represent an enumeration property via a drop-down box with check boxes-by DevExpress.
- How to: Sort a nested ListView at the business objects level, in code-by DevExpress.
- How to: Display a non-persistent object's Detail View from the Navigation-by DevExpress.
- How to: Show a hyper link (URL, email, etc.) for a business class property-by DevExpress.
- How to: Access the Application Model in Code-by DevExpress.
- How to show a complex dialog
- How to add spell checking capabilities into an XAF application for Windows and the Web
- How to calculate a master property based on values from a details collection
- How to use custom ReportParametersObject to filter detail reports ( DetailReportBand )
- Validation - How to highlight invalid properties when the View is shown
- How to: Disable Property Editors Based on a Business Rule
- How to: Use Notifications with a Custom Business Class (Implement ISupportNotifications)
- How to Implement a Singleton class
- How to copy last entered values into a newly created object, when using the Save and New action
- How to: Use Custom Logon Parameters and Authentication
- How to: Change the Client-Side Security Mode from UI Level to Integrated in XPO applications
- How to: Initialize Business Objects with Default Property Values in XPO
- How to: Calculate a Property Value Based on Values from a Detail Collection
- How to: Access Objects Selected in the Current View
- How to: Include an Action to a Detail View Layout
- How to: Change an Application Logo and Info
- How to: Specify a Display Member (for a Lookup Editor, Detail Form Caption, etc.)
- How to: Display a Non-Persistent Object's Detail View
- How to: Display a List of Non-Persistent Objects in a Popup Dialog
- How to: Show a Custom Data-Bound Control in an XAF View (WinForms)
- How to: Show a Custom Data-Bound Control in an XAF View (ASP.NET)
- How to: Implement a Property Editor Based on a Custom Control (WinForms)
- How to: Implement a Property Editor Based on Custom Controls (ASP.NET)
- How to: Create an Action Using the Action Attribute
- How to: Deactivate (Hide) an Action in Code
- How to: Initialize an Object Created Using the New Action
- How to: Customize Action Controls
To the extent possible under law, Jose Javier Columbie has waived all copyright and related or neighboring rights to this work.