Skip to main content
All docs
V24.2

Create a DevExpress-powered .NET App for WinForms with Design-Time Support

  • 4 minutes to read

DevExpress Project Templates

Use the DevExpress Project Template Gallery to quickly create DevExpress-powered projects that target .NET 8+. The Project Template Gallery ships as part of the DevExpress Unified Component Installer and is integrated into Visual Studio after DevExpress controls are installed.

Follow the steps below to create a DevExpress-powered .NET application for WinForms:

  1. Create a new DevExpress-powered WinForms project:

    Create a New WinForms Project

  2. In the .NET tab, select the application template and .NET version (target framework):

    DevExpress Template Gallery - .NET App Templates

Tip

  • The DevExpress project template adds the DevExpress.Win.Design NuGet package to Package References in the project file (*.csproj) to enhance the design-time experience in Visual Studio for DevExpress-powered WinForms applications. The Unified Component Installer creates a local NuGet feed with DevExpress .NET packages and registers this feed in your Visual Studio IDE as a package source.
  • Install the DevExpress.Win NuGet package if you do not need design-time customization/features.

Add DevExpress Controls to an Existing .NET App for WinForms

  1. In the Solution Explorer, right-click the project and select Manage NuGet Packages from the drop-down menu.
  2. Select the DevExpress package source (you can add DevExpress packages from a local or remote/online feed):

    NuGet Package Manager - Local Package Source

    How to add DevExpress NuGet packages to an existing .NET project from a remote/online feed

    Follow the steps below to add DevExpress NuGet packages to an existing .NET project from a remote feed:

    1. Obtain your NuGet Feed URL. You need to be logged in as a registered DevExpress customer and have an active WinForms, DXperience, or Universal subscription.
    2. Register the online NuGet Feed as a package source.

    Note

    Install the DevExpress.Win package if you do not need design-time features.

  3. Open project properties. Ensure that the Target OS setting is set to Windows.

    WinForms .NET 8 Application - Project Settings

    <Project Sdk="Microsoft.NET.Sdk">
      <PropertyGroup>
        <OutputType>WinExe</OutputType>
        <TargetFramework>net8.0-windows</TargetFramework> <!-- CHECK THIS LINE -->
        <UseWindowsForms>true</UseWindowsForms>
      </PropertyGroup>
    </Project>
    
  4. Install required DevExpress NuGet packages with or without design-time support. The following two techniques enable customization of all or specific DevExpress WinForms UI controls in the Visual Studio designer. This includes grid designers, property editors, and other design-time enhancements that streamline the development process when working with DevExpress UI controls.

    1. Install a Unified NuGet Package with Design-Time Support

      Install the DevExpress.Win.Design NuGet package if you want to use most UI controls that ship as part of the DevExpress WinForms UI Library.

      The advantage of this technique is that by adding a single NuGet package, you gain access to all DevExpress UI controls in your project. However, while the DevExpress.Win.Design package greatly enhances the design-time experience, its size may affect the initial load time of a Form in the Visual Studio designer.

    2. Install Atomic (Control-Specific) NuGet Packages with Design-Time Support

      If you only need a few DevExpress UI controls, consider installing lightweight, control-specific DevExpress.Win.XXX packages. This technique can improve the initial load time of a Form in the Visual Studio designer by up to 15-20% compared to using the DevExpress.Win.Design package.

      Available DevExpress NuGet packages include:

      • DevExpress.Win.Diagram
      • DevExpress.Win.Dialogs
      • DevExpress.Win.Gantt
      • DevExpress.Win.Gauges
      • DevExpress.Win.Grid
      • DevExpress.Win.Map
      • DevExpress.Win.PdfViewer
      • DevExpress.Win.PivotGrid
      • DevExpress.Win.RichEdit
      • DevExpress.Win.Charts
      • DevExpress.Win.Dashboard
      • DevExpress.Win.SpellChecker
      • DevExpress.Win.Spreadsheet
      • DevExpress.Win.TreeList
      • DevExpress.Win.TreeMap
      • DevExpress.Win.VerticalGrid
      • DevExpress.DataAccess.UI (should be used instead of DevExpress.Xpo and DevExpress.DataAccess)
      • DevExpress.Win.Navigation (should be used instead of DevExpress.Data and DevExpress.Utils)
      • DevExpress.Win.Reporting (should be used instead of DevExpress.Win.Printing)
      • DevExpress.Win.SchedulerExtensions (should be used instead of DevExpress.Win.Scheduler and DevExpress.Win.SchedulerReporting)

      Note

      Packages listed in parentheses do not offer design time for associated components.

    3. Install Runtime Packages without Design-Time Support

      Install the DevExpress.Win NuGet package if you do not need design-time customization/features. This technique is suitable for those who prefer to create and customize UI controls in code or manually modify form designer files (for example, if you develop apps in JetBrains Rider or VS Code).

      Note

      This technique is suitable for projects that do not require extensive visual designer customization (advanced knowledge of DevExpress WinForms APIs is required).

  5. Build the project.
See Also