Hướng dẫn cài devexpress cho visual 2023 năm 2024

The DevExpress.Drawing Graphics Library was first introduced in November 2022 as a Community Technology Preview (CTP). This update marks its official release. The following drawing library-related capabilities and features are now available in non-Windows environments:

Reports:

  • Render justified text in labels.
  • Respect source image resolution (dpi) within
                    DevExpress.XtraEditors.WindowsFormsSettings.SetAccentColor(Color.FromArgb(16,124,65));  
    
    7 .
  • Embed PDFs into report documents using the
                    DevExpress.XtraEditors.WindowsFormsSettings.SetAccentColor(Color.FromArgb(16,124,65));  
    
    8 report control.
  • Display and print gauges within reports using the
                    DevExpress.XtraEditors.WindowsFormsSettings.SetAccentColor(Color.FromArgb(16,124,65));  
    
    9 report control.
  • Use the
                    assistant.Attach(grid, x => {  
                        x.CurrentPath = initialPath;  
                        string customCommandName = "custom";  
                        x.ContextMenuShowing += (s, e) => {  
                            e.MenuItems.AddCommand("Custom command", customCommandName);  
                        };  
                        x.BeforeExecuteItemCommand += (s, e) => {  
                            if(e.CommandName == customCommandName) {  
                                XtraMessageBox.Show("Custom command executed");  
                                e.Cancel = true;  
                            }  
                        };  
                    });  
    
    0 property to specify image resolution.
  • Export all report pages to a single TIFF image (
                    assistant.Attach(grid, x => {  
                        x.CurrentPath = initialPath;  
                        string customCommandName = "custom";  
                        x.ContextMenuShowing += (s, e) => {  
                            e.MenuItems.AddCommand("Custom command", customCommandName);  
                        };  
                        x.BeforeExecuteItemCommand += (s, e) => {  
                            if(e.CommandName == customCommandName) {  
                                XtraMessageBox.Show("Custom command executed");  
                                e.Cancel = true;  
                            }  
                        };  
                    });  
    
    1 export mode).
  • Automatically replace missing font glyphs for reports exported to PDF / Image and drawn in the Web Viewer.

BI Dashboard:

  • Gauges and Treemaps Export

Office File API:

  • Shapes in Word Processing and Spreadsheet Document API
  • PDF Graphics API
  • Treemap and Sunburst Visualizations in Word Processing and Spreadsheet Document API
  • Export to Bitmap and Image Extraction in PDF Document API
  • Improved Barcode Export in Barcode Generation API

We also replaced all

                    assistant.Attach(grid, x => {  
                        x.CurrentPath = initialPath;  
                        string customCommandName = "custom";  
                        x.ContextMenuShowing += (s, e) => {  
                            e.MenuItems.AddCommand("Custom command", customCommandName);  
                        };
                        x.BeforeExecuteItemCommand += (s, e) => {  
                            if(e.CommandName == customCommandName) {  
                                XtraMessageBox.Show("Custom command executed");  
                                e.Cancel = true;  
                            }  
                        };  
                    });  

2 enumerations in our public API with cross-platform counterparts.

Read the following breaking change advisory for detailed information related to this update: Office-Inspired Products, Barcode Generation API, Reporting, and Printing - Members changed their types and signatures.

Windows Forms Designer for .NET - Enhancements

  • .NET projects support loading images into project resources.
  • Add images into project resources using the DevExpress Image Gallery.
    Hướng dẫn cài devexpress cho visual 2023 năm 2024
  • Collections - Load From Project Resources
  • You can filter properties by name within Visual Studio's Properties window.
  • We use our collection editors to edit collection properties of DevExpress WinForms controls.
  • You can use the Splash Screen Manager's smart-tag to add a Splash Screen or a Wait Form to your project.

Item Templates for .NET Applications

You can now use the following Item Templates within .NET applications:

  • UI-Ready User Control
  • UI-Ready Form
  • Custom Data Editor
  • Custom Data Grid

Hướng dẫn cài devexpress cho visual 2023 năm 2024

Your feedback matters. Please, review the description of WinForms-related features below and leave your feedback at the end of the section.

Data Grid

WYSIWYG and Data-Aware Export Enhancements

We added a new

                    assistant.Attach(grid, x => {  
                        x.CurrentPath = initialPath;  
                        string customCommandName = "custom";  
                        x.ContextMenuShowing += (s, e) => {  
                            e.MenuItems.AddCommand("Custom command", customCommandName);  
                        };
                        x.BeforeExecuteItemCommand += (s, e) => {  
                            if(e.CommandName == customCommandName) {  
                                XtraMessageBox.Show("Custom command executed");  
                                e.Cancel = true;  
                            }  
                        };  
                    });  

3 event to all View types. Handle this event to determine whether view data was printed or exported without errors. Use the

                    assistant.Attach(grid, x => {  
                        x.CurrentPath = initialPath;  
                        string customCommandName = "custom";  
                        x.ContextMenuShowing += (s, e) => {  
                            e.MenuItems.AddCommand("Custom command", customCommandName);  
                        };
                        x.BeforeExecuteItemCommand += (s, e) => {  
                            if(e.CommandName == customCommandName) {  
                                XtraMessageBox.Show("Custom command executed");  
                                e.Cancel = true;  
                            }  
                        };  
                    });  

4 event parameter to determine if the operation was successful, failed, or was cancelled.

  • C#

                    using DevExpress.XtraEditors;  
                    using DevExpress.XtraGrid.Views.Base;
                    public Form1() {  
                        InitializeComponent();  
                        gridView1.PrintExportCompleted += GridView1_PrintExportCompleted;  
                    }  
                    private void GridView1_PrintExportCompleted(object sender, PrintExportCompletedEventArgs e) {  
                        if(e.Status == GridPrintExportResult.Error)  
                            XtraMessageBox.Show(  
                                new XtraMessageBoxArgs() {  
                                    Text = "An unexpected error occurred while exporting data.",  
                                    Caption = "Error",  
                                    ImageOptions = new MessageBoxImageOptions() {  
                                        SvgImage = svgImageCollection1[0],  
                                        SvgImageSize = new Size(32, 32)  
                                    }  
                                });  
                    }  

Data Editors

Lookup Editor – Multiple Item Selection

Our WinForms Lookup Editor includes a new multiple item selection option. With this capability, you can display a checkbox column within the lookup and allow users to select multiple values using the mouse or keyboard.

Hướng dẫn cài devexpress cho visual 2023 năm 2024

Color Editors - Allow Null Input

Our WinForms ColorEdit and ColorPickEdit controls now set the

                    assistant.Attach(grid, x => {  
                        x.CurrentPath = initialPath;  
                        string customCommandName = "custom";  
                        x.ContextMenuShowing += (s, e) => {  
                            e.MenuItems.AddCommand("Custom command", customCommandName);  
                        };
                        x.BeforeExecuteItemCommand += (s, e) => {  
                            if(e.CommandName == customCommandName) {  
                                XtraMessageBox.Show("Custom command executed");  
                                e.Cancel = true;  
                            }  
                        };  
                    });  

5 property to null (Nothing in Visual Basic) if the

                    assistant.Attach(grid, x => {  
                        x.CurrentPath = initialPath;  
                        string customCommandName = "custom";  
                        x.ContextMenuShowing += (s, e) => {  
                            e.MenuItems.AddCommand("Custom command", customCommandName);  
                        };
                        x.BeforeExecuteItemCommand += (s, e) => {  
                            if(e.CommandName == customCommandName) {  
                                XtraMessageBox.Show("Custom command executed");  
                                e.Cancel = true;  
                            }  
                        };  
                    });  

6 option is enabled and a user presses Ctrl+Del or Ctrl+0.

We added a new

                    assistant.Attach(grid, x => {  
                        x.CurrentPath = initialPath;  
                        string customCommandName = "custom";  
                        x.ContextMenuShowing += (s, e) => {  
                            e.MenuItems.AddCommand("Custom command", customCommandName);  
                        };
                        x.BeforeExecuteItemCommand += (s, e) => {  
                            if(e.CommandName == customCommandName) {  
                                XtraMessageBox.Show("Custom command executed");  
                                e.Cancel = true;  
                            }  
                        };  
                    });  

7 property so you can specify a custom null color. This value is assigned to the editor's Color property when the user resets the edit value.

Skins and Vector Icons

Support for Default App Mode in Windows OS

We added a new

                    assistant.Attach(grid, x => {  
                        x.CurrentPath = initialPath;  
                        string customCommandName = "custom";  
                        x.ContextMenuShowing += (s, e) => {  
                            e.MenuItems.AddCommand("Custom command", customCommandName);  
                        };
                        x.BeforeExecuteItemCommand += (s, e) => {  
                            if(e.CommandName == customCommandName) {  
                                XtraMessageBox.Show("Custom command executed");  
                                e.Cancel = true;  
                            }  
                        };  
                    });  

8 setting. When enabled, your application can track the Default App Mode setting used in Windows OS and only display light or dark color palettes within the Skin gallery.

Hướng dẫn cài devexpress cho visual 2023 năm 2024

Available for the DevExpress "WXI", "Basic", and "Bezier" skins.

  • C#

                    static void Main() {  
                        Application.EnableVisualStyles();  
                        Application.SetCompatibleTextRenderingDefault(false);  
                        WindowsFormsSettings.TrackWindowsAppMode = DevExpress.Utils.DefaultBoolean.True;  
                        Application.Run(new Form1());  
                    }  

System and Custom Accent Colors

DevExpress vector skins can now change associated colors once end users make a change to a system accent color within Microsoft Windows. Activate the

                    assistant.Attach(grid, x => {  
                        x.CurrentPath = initialPath;  
                        string customCommandName = "custom";  
                        x.ContextMenuShowing += (s, e) => {  
                            e.MenuItems.AddCommand("Custom command", customCommandName);  
                        };
                        x.BeforeExecuteItemCommand += (s, e) => {  
                            if(e.CommandName == customCommandName) {  
                                XtraMessageBox.Show("Custom command executed");  
                                e.Cancel = true;  
                            }  
                        };  
                    });  

9 setting to enable this option*.

Hướng dẫn cài devexpress cho visual 2023 năm 2024

  • C#

                        using DevExpress.Utils;  
                        using DevExpress.XtraEditors;
                        static void Main() {  
                            Application.EnableVisualStyles();  
                            Application.SetCompatibleTextRenderingDefault(false);  
                            WindowsFormsSettings.TrackWindowsAccentColor = DefaultBoolean.True;  
                            Application.Run(new Form1());  
                        }  

You can also specify a custom accent color and apply the desired appearance on the fly.

  • C#

                    DevExpress.XtraEditors.WindowsFormsSettings.SetAccentColor(Color.FromArgb(16,124,65));  

"The Bezier" skin supports a secondary accent color. Use the

                    filterControl1.ShowActionButtonMode = DevExpress.XtraEditors.ShowActionButtonMode.Always;  

0 method to specify a second accent color.

* The

                    assistant.Attach(grid, x => {  
                        x.CurrentPath = initialPath;  
                        string customCommandName = "custom";  
                        x.ContextMenuShowing += (s, e) => {  
                            e.MenuItems.AddCommand("Custom command", customCommandName);  
                        };
                        x.BeforeExecuteItemCommand += (s, e) => {  
                            if(e.CommandName == customCommandName) {  
                                XtraMessageBox.Show("Custom command executed");  
                                e.Cancel = true;  
                            }  
                        };  
                    });  

9 setting does not work with our High Contrast skin.

WXI Skin - Enhanced Rendering

We enhanced the rendering of our text input and dropdown editors with a custom background color (WXI skin*).

* Our WinForms BreadCrumbEdit, MemoEdit, and TokenEdit controls do not support this feature.

Charting

Enhanced Visualization of Spline Series

We enhanced the visualization of our spline chart - the spline line is rendered between local minimum and maximum values:

Use the SplineAlgorithm property to specify the drawing algorithm used for the Spline series view.

This change affects the following series views:

  • SplineSeriesView
  • SplineAreaSeriesView
  • StackedSplineAreaSeriesView
  • FullStackedSplineAreaSeriesView
  • Spline3DSeriesView
  • SplineArea3DSeriesView
  • StackedSplineArea3DSeriesView
  • FullStackedSplineArea3DSeriesView

Read the following breaking change advisory for detailed information: The default drawing algorithm of Spline series view was changed

Hướng dẫn cài devexpress cho visual 2023 năm 2024

Dialogs

Preview Pane

Our WinForms Open File and Save File Dialogs ship with an integrated Preview Pane. Your users can now preview PDFs, Office-related documents, HTML file, text files, and images within the dialog.

Hướng dẫn cài devexpress cho visual 2023 năm 2024

Customize Context Menu

We added new events designed to customize context menus (add new commands, hide/disable commands, etc.) in our WinForms File Explorer Assistant component:

  •                 filterControl1.ShowActionButtonMode = DevExpress.XtraEditors.ShowActionButtonMode.Always;  
    
    2
  •                 filterControl1.ShowActionButtonMode = DevExpress.XtraEditors.ShowActionButtonMode.Always;  
    
    3

Hướng dẫn cài devexpress cho visual 2023 năm 2024

  • C#

                    assistant.Attach(grid, x => {  
                        x.CurrentPath = initialPath;  
                        string customCommandName = "custom";  
                        x.ContextMenuShowing += (s, e) => {  
                            e.MenuItems.AddCommand("Custom command", customCommandName);  
                        };
                        x.BeforeExecuteItemCommand += (s, e) => {  
                            if(e.CommandName == customCommandName) {  
                                XtraMessageBox.Show("Custom command executed");  
                                e.Cancel = true;  
                            }  
                        };  
                    });  

Filtering UI

Filter Control - UX Enhancements

The WinForms Filter control includes a new

                    filterControl1.ShowActionButtonMode = DevExpress.XtraEditors.ShowActionButtonMode.Always;  

4 property that specifies whether the Filter Control always displays action buttons (for example, add or remove a condition) or displays buttons on hover.

Hướng dẫn cài devexpress cho visual 2023 năm 2024

  • C#

                    filterControl1.ShowActionButtonMode = DevExpress.XtraEditors.ShowActionButtonMode.Always;  

Gantt Control

Timeline

The WinForms Gantt control includes a new integrated Timeline.

Hướng dẫn cài devexpress cho visual 2023 năm 2024

Features include:

  • Display Timeline at the Top or Bottom of the Gantt Control
  • Bind to Data
  • Multiple Timeline Bars
  • Add/Remove Tasks and Milestones to/from Timeline
  • Configurable Date-Time Range
  • Select Multiple Tasks
  • Today Indicator
  • Built-in Context Menu
  • Go to Task
  • Pan and Zoom Timeline Scale
  • Resize Timeline
  • Print and Export
  • Comprehensive Timeline API

Documentation Blog Post

HTML & CSS Support

Reusable HTML & CSS Templates

Our WinForms HTML & CSS Template Gallery includes a set of predesigned templates based on those used in our WinForms demo applications. You can use these templates "as-is" or customize as needed. You can create an HTML & CSS template, save the template to the gallery, and use it in any WinForms project when needed.

Hướng dẫn cài devexpress cho visual 2023 năm 2024

Bind Image Tags to Data Fields with Image Names

You can now bind image tags to data source fields with image names. An HTML Template checks whether the data field contains SVG or bitmaps. If it does not, the template looks for an image with the specified name in the

                    filterControl1.ShowActionButtonMode = DevExpress.XtraEditors.ShowActionButtonMode.Always;  

5 (assigned to the control's

                    filterControl1.ShowActionButtonMode = DevExpress.XtraEditors.ShowActionButtonMode.Always;  

6 property).

  • HTML

                          

Ribbon

New Office 365 Style

Our WinForms Ribbon Control ships with a new Office 365 rendering style.

When our new Office 365 style is used, the WinForms Ribbon control displays a Search box at the top of the Ribbon form and displays Show Ribbon options on the bottom right of the Ribbon UI.

Hướng dẫn cài devexpress cho visual 2023 năm 2024

Use the following API to enable new UI enhancements in other Ribbon styles:

  •                 filterControl1.ShowActionButtonMode = DevExpress.XtraEditors.ShowActionButtonMode.Always;  
    
    7 - Gets availability and behavior settings for the "Show Ribbon" popup menu.
  •                 filterControl1.ShowActionButtonMode = DevExpress.XtraEditors.ShowActionButtonMode.Always;  
    
    8 - Allows you to customize the "Show Ribbon" menu or prevent it from being displayed (based on a specific condition).
  •                 filterControl1.ShowActionButtonMode = DevExpress.XtraEditors.ShowActionButtonMode.Always;  
    
    9 - Specifies the position of the Search box.

Backstage View – Align Items to Top and Bottom

Backstage View item settings now include a new

                          

0 option. This option allows you to align items to the top and bottom of the Backstage View, and to the left and right of the Caption Bar and Quick Access Toolbar (when it is displayed below the Ribbon control).

Hướng dẫn cài devexpress cho visual 2023 năm 2024

  • C#

backstageViewItem.Alignment = BackstageViewItemAlignment.Bottom;

Show Alerts within the Ribbon Message Bar

We implemented new APIs to display Office-inspired flyout notifications and alerts.

Hướng dẫn cài devexpress cho visual 2023 năm 2024

New APIs include:

  •                       
    
    1 - Displays a message in the message bar.
  •                       
    
    2 - Closes the specified message.
  •                       
    
    3 - Occurs after a message is closed and allows you to handle button clicks.
  •                       
    
    4 - Gets a collection of messages displayed in the message bar.
  • C#

                        using DevExpress.XtraBars.Ribbon;
                        void ShowMessage() {  
                            RibbonMessageArgs args = new RibbonMessageArgs();  
                            args.Caption = "What's New";  
                            args.Text = "Explore new WinForms-related features we expect to introduce in our first major update this year (v23.1).";  
                            args.Icon = MessageBoxIcon.Information;  
                            args.Buttons = new DialogResult[] { DialogResult.OK };  
                            args.Showing += Args_Showing;  
                            Ribbon.ShowMessage(args);  
                            Ribbon.MessageClosed += Ribbon_MessageClosed;  
                        }  
                        void Ribbon_MessageClosed(object sender, RibbonMessageClosedArgs e) {  
                            if(e.Result == DialogResult.OK)  
                                Data.Utils.SafeProcess.Start("https://community.devexpress.com/blogs/winforms/archive/2023/02/16/devexpress-winforms-roadmap-23-1.aspx");  
                        }  
                        void Args_Showing(object sender, RibbonMessageShowingArgs e) {  
                            e.Buttons[DialogResult.OK].Caption = "Explore Roadmap";  
                        }  

Page Header Items – Colorization in Vector Skins

Page header items (

                          

5 and

                          

  1. can adjust text and SVG icon colors based on the background color in vector skins. The background color must be set to a Skin Color (at design time, switch to the "DX Skins" tab to choose a Skin Color).

Hướng dẫn cài devexpress cho visual 2023 năm 2024

Rich Text Editor

Rotated Text in Tables

The WinForms Rich Text Editor now supports rotated text in table cells. We added a 'Text Direction' command to the Ribbon UI and a TableCell.TextDirection property to rotate cell text in code.

You can print and export (PDF) documents with rotated text in tables.

Hướng dẫn cài devexpress cho visual 2023 năm 2024

Embedded Fonts

Our new API (Document.EmbedFonts API) allows you to embed fonts within Microsoft Word documents. Once fonts are embedded in a document, document appearance remains unchanged when viewed, printed, or exported on any computer (regardless of the presence of the font on the target machine). Embedded fonts are available within the font list.

Documentation

Scheduler

Synchronize Appointments with Microsoft 365 Calendars

Our WinForms Scheduler control exposes new APIs and allows you to seamlessly synchronize user appointments with Microsoft 365 calendars (bi-directionally).

You can export appointments from the Scheduler control to Microsoft 365 calendars, import Microsoft 365 (Outlook) events to the Scheduler control, merge user appointments with Microsoft 365 calendars, and resolve merge conflicts.

Documentation

Hướng dẫn cài devexpress cho visual 2023 năm 2024

Spreadsheet

Threaded Comments

You can now manage threaded comments in code. Use the Worksheet.ThreadedComments property to add, edit, reply, and remove threaded comments (the Spreadsheet control retains comments when resaving an Excel document). ‌

Documentation

Chart Enhancements

The WinForms Spreadsheet control can now display, print, and export (PDF) the following chart UI elements:

  • Chart Markers with Solid Outlines
  • Trendlines
  • Data Tables
  • Legends with Custom Fonts

Chart Enhancements - WinForms Spreadsheet

Hướng dẫn cài devexpress cho visual 2023 năm 2024
Trendlines

Hướng dẫn cài devexpress cho visual 2023 năm 2024
Chart Markers

Hướng dẫn cài devexpress cho visual 2023 năm 2024
Data Tables

Hướng dẫn cài devexpress cho visual 2023 năm 2024
Legends with Custom Fonts

Use Cell Values as Data Labels in Charts

You can now use cell values as data labels for a chart. Use the CustomDataLabels.SetReference method to specify a cell range used as a reference.

  • C#

                    chart.Series[0].UseCustomDataLabels = true;  
                    var customDataLabels = chart.Series[0].CustomDataLabels;  
                    customDataLabels.SetReference("C2:C4");  

You can print and export to PDF spreadsheet documents that contain charts with custom data labels.

Documentation

Hướng dẫn cài devexpress cho visual 2023 năm 2024

TreeList

HTML & CSS Templates

Our WinForms TreeList Control now supports HTML & CSS Template engine. HTML & CSS Templates allow you to create unique layouts for TreeList nodes and the TreeList itself when empty.

New API includes:

  •                       
    
    7 - A collection of HTML-CSS templates that can be applied to TreeList UI elements.
  •                       
    
    8 - Specifies the default HTML-CSS template used for nodes.
  •                       
    
    9 - Specifies the default HTML-CSS template used for a TreeList control when empty.
  • backstageViewItem.Alignment = BackstageViewItemAlignment.Bottom;

    0 - Allows you to assign HTML-CSS templates to nodes based on a specific condition.
  • backstageViewItem.Alignment = BackstageViewItemAlignment.Bottom;

    1 - Allows you to assign HTML-CSS templates to an empty TreeList based on a specific condition.
  • backstageViewItem.Alignment = BackstageViewItemAlignment.Bottom;

    2 - Allows you to customize "templated" nodes.
  • backstageViewItem.Alignment = BackstageViewItemAlignment.Bottom;

    3 - Contains options that are applied when you use HTML-CSS Templates to render nodes.

Hướng dẫn cài devexpress cho visual 2023 năm 2024

Improved Performance for Large Hierarchical Binding Lists

We optimized our WinForms TreeList control to better address important usage scenarios. We enhanced the speed and efficiency when deleting nodes and updating child collections whenever the TreeList is bound to a very large hierarchical binding list. The TreeList now performs these operations up to 20 times faster.

Accessibility and UI Automation

Scheduler Accessibility

We supported assistive tools and UI Automation patterns in our WinForms Scheduler control. The Scheduler control implements standard API used by accessibility client applications. All UI elements are labeled and properly recognized, property values are exposed, and appropriate events are raised.

Enable the

backstageViewItem.Alignment = BackstageViewItemAlignment.Bottom;

4 setting to use UI Automation patterns.

UI Templates (EAP)

DevExpress UI Templates were designed to jump start the form design/development process. With this product, you can create/deliver ready-to-use UI solutions and address a variety of line-of-business (LOB) requirements in a timely manner (and eliminate the need for routine UI customizations when using DevExpress WinForms controls).

In v23.1, we added a new Twin Button template and extended our grid-based templates with new Contact and Task List templates. Active Universal, DXperience, and WinForms subscribers can download these templates as VSIX via the DevExpress Download Manager.

Hướng dẫn cài devexpress cho visual 2023 năm 2024

After you install our UI Templates, be sure to review our Quick Start Guide for technical guidance and watch our tutorial videos:

  • Introduction to WinForms UI Templates
  • How to Customize UI Templates

Your Feedback Matters!

Please login to complete the survey.

Hướng dẫn cài devexpress cho visual 2023 năm 2024

Survey Completed

Thank you for taking the time to complete this survey. Your responses have now been posted. If you want to follow up with additional information, feel free to send us an email at [email protected] anytime.

You've Already Completed This Survey

Our records show that you have already completed this survey. If you want to follow up with additional information, send us an email at [email protected].

This survey has expired

If you want to share your feedback or request new functionality, please submit a new support ticket via the DevExpress Support Center. We’ll be happy to follow up.