WPF - Early Access Preview (v19.1)

15 March 2019

We are about two months away from the official v19.1 launch, so we wanted to share our progress and let you test major new functionality before we wrap up another development cycle. If you own an active Universal or DXperience subscription, you can download the CTP build from the DevExpress Download Manager and test the features described in this blog post. Do let us know how well the new features address your requirements, since your feedback will help us fine-tune our code before launch. You can share your thoughts via our Support Center, the comments section below, or by emailing us at wpfteam@devexpress.com.

If you are using a trial version and would like to access these new features today, purchase a Universal or DXperience subscription license and you will automatically receive access to the CTP version. If you are ready to upgrade to Universal or DXperience from another subscription level, email us at clientservices@devexpress.com for preferential upgrade pricing.

We’ve prepared a list of the new functionality that is ready for further testing, along with a brief description of each feature and some usage/testing guidance. We shall be publishing separate in-depth blog posts on these features shortly, so stay tuned!

Visual Studio 2019 Support

You may have seen our announcement about Visual Studio 2019 support in version 18.2.4 of our components. However, since this version was released before the newest Microsoft IDE became available, our installation used standard synchronous packages as we had done for all previous versions of Visual Studio. For VS2019 though, this decision caused the IDE to show notifications about DevExpress extensions causing performance to be slowed down.

Version 19.1 is different. It has been designed and built with all the up-to-date Visual Studio 2019 requirements in mind and is fully compatible with this IDE. The newest version of DevExpress controls loads asynchronously, and has no impact on IDE start-up performance.

AutoSuggest Editor

The AutoSuggestEdit displays a drop-down list of suggestions as the user types in the text box.

AutoSuggestEdit

To work with the AutoSuggestEdit, you will need to handle the following events:

  • QuerySubmitted. This event fires when the editor's text has been changed. In the event handler, you can provide any relevant suggestions that would be displayed in the editor's popup window.
    void Countries_OnQuerySubmitted(object sender, AutoSuggestEditQuerySubmittedEventArgs e) { 
        this.countries.ItemsSource = string.IsNullOrEmpty(e.Text) 
            ? null 
            : this.context.CountriesArray 
                  .Where(x => Regex.IsMatch(x, Regex.Escape(e.Text), RegexOptions.IgnoreCase | RegexOptions.IgnorePatternWhitespace)) 
                  .Take(10) 
                  .ToArray(); 
    } 
  • SuggestionChosen. This event fires when the user selects a suggestion in the editor's popup. You need to use this event to get the selected item.

  • TextChanged. This event fires when you set the editor's EditValue property.

Demo Link: AutoSuggestEdit

BreadCrumb Control

With v19.1, we can show you a preview version of the new Breadcrumb Control. It simplifies navigation within an app, and allows you to construct hierarchical navigation paths.

breadcrumb

Demo Link: File System

TimeSpan Masks

We have implemented the new TimeSpan mask type, so that the TextEdit and ButtonEdit controls can now work with TimeSpan values.

The TimeSpan masks extend the standard .NET Custom TimeSpan Format Strings syntax.

<dxe:TextEdit MaskType="TimeSpan" EditValue="5.01:02:03" Mask="h HH m MM ss SS"/>

mask

TimeSpan masks also support optional mask parts, which will appear when a user enters a corresponding literal or navigates through them using left and right arrows.

<dxe:TextEdit MaskType="TimeSpan" EditValue="00:00:00" Mask="[hH ][mM ]sS"/>

Mask Optional Parts

The TimeSpan masks support both positive and negative values.

Demo Link: TimeSpan Masks

Data Grid

Group Filters

You can group values in a column's Excel-style drop-down filter by using values from another column. In this case, users can filter data by multiple columns.

Demo Link: Excel Style Filtering

Documentation

“No Records” Text Block

The Data Grid and Tree List can display the "No Records" text block in the data area when a data source is empty or a filter/search query has no results.

Demo Link: Grid Searh Panel

Documentation

Tree List

New Item Row

The Tree List now supports the New Item Row - an empty row at the top or the bottom of the tree. Users can enter data into this row to create new nodes, and then drag them anywhere in the hierarchy.

Demo Link: New Item Row

Documentation

New Filter Mode

The Tree List supports a new filter mode. In this mode, a node that meets the filter criteria is displayed along with all its parent and child nodes.

Demo Link: Filtering

Documentation

Gantt Control - Task Interaction and Automatic Scheduling

The Gantt area is now interactive. You can drag tasks, resize them, change progress, and define predecessors in the UI. Other Gantt elements will react to your changes and be redisplayed. Summary tasks will adjust their progress and duration after changes to their children. Tasks and milestones will change their Start Date after changes to their predecessors.

In addition, the Gantt control now supports a dependency lag for predecessor tasks and can calculate the task duration according to defined working time rules.

GanttControl Editing

Demo Link: Startup Plan

Scheduler Control

Date Navigation Panel

The Date Navigation Panel shows the current time interval and displays buttons to allow the user to navigate the intervals.

Data Navigation Panel

Documentation

Demo Link: Agenda View

Printing

We have greatly improved the Scheduler’s print functionality. The control's API now includes numerous printing options such as printing interval, the number of resources per page, the ability to hide the calendar element, etc.

You and your users can choose from a set of predefined printing templates: DailyStyle, WeeklyStyle, MonthlyStyle, TimelineStyle, TrifoldStyle. Templates are automatically adjusted to the current window settings.

And last, but not least, the Scheduler Control introduces a new Print Preview window.

Print Preview

Demo Link: Printing

Clipboard Support

Users can now copy and paste appointments within the Scheduler as well as any control or application that supports text input. We have provided options and events that allow you customize or restrict certain clipboard operations.

Scheduler Copy Paste

Documentation

Diagram Control

Collapsible Containers

Users can now collapse or expand container content. To enable this functionality, set the DiagramContainer.CanCollapse property to true.

Demo Link: Database Diagram

Export to Pdf

We have added out-of-the-box PDF export to the Diagram Control. Diagrams are saved as vector images, which means that scaling issues are eliminated.

Diagram PDF Export

Demo Link: Diagram Designer

18 comment(s)
Blago Culjak

Do you have plans to include Excel-style filtering in 19.1? That would be great!

15 March, 2019
Alex Chuev (DevExpress)

Blago,

The Data Grid supports Excel-style filtering since version 16.2. Our developers are currently working on the same functionality in the Pivot Grid, but it is too early to say whether it will be released in v19.1.

Thanks,

Alex

15 March, 2019
Juan Antonio Trujillo Montenegro

Looking forward to it! :)

15 March, 2019
Customer71678

Do you have plans to include  BarWorkspaceMenuItem in WPF controls?

Like this in Winforms:

documentation.devexpress.com/.../Workspace-Manager

17 March, 2019
Alexander Arkblad

Can we still hope for the Office 2019 themes and the Color Presets feature in v19.1?

18 March, 2019
Alex Chuev (DevExpress)

@Customer71678:

Although we don't have plans for BarWorkspaceMenuItem, it should be easy to implement a similar functionality manually using our WorkspaceManager API:

documentation.devexpress.com/.../Workspace-Manager

@Alexander:

Our team currently works on Office 2019 themes and Color Presets, but these features were not yet ready to be included in the CTP build.

18 March, 2019
Dennis Schiepers

Are there any plans of adding export functionality on layout controls?

19 March, 2019
JamesB

Is the Fluent Design theme still planned for 19.1?

Thanks

19 March, 2019
Phill

Support for DateTimeOffset within the approriate editors would be appreciated

19 March, 2019
Artem D

Can the AutoSuggestEdit display multiple items, let’s say separated by a comma?

19 March, 2019
Alex Chuev (DevExpress)

@Dennis:

We may implement export/printing for the Layout Control at some point, but this functionality has lower priority than the features listed in our Roadmap.

@James:

We have no specific release date for the Fluent Design theme and plan to research whether it can be implemented:

community.devexpress.com/.../wpf-controls-2019-roadmap.aspx

Individual Fluent Design effects listed as "v19.1 or v19.2" in the Roadmap will likely be pushed to v19.2 since our main focus at the moment is .NET Core 3.

@Phill:

Although we have no plans to introduce editors for DateTimeOffset, it should be possible to convert DateTimeOffset values to DateTime and vice versa:

www.devexpress.com/.../how-to-convert-dateedit-value-to-datetimeoffset-object

If this functionality is not sufficient, please contact me at wpfteam@devexpress.com and describe your scenario.

@Artem:

The version in this CTP build only supports single selection. I've passed your scenario to the team, we will see how to support it.

19 March, 2019
Viacheslav Iatskivskyi

What is required .NET Framework version for this?

19 March, 2019
Alex Chuev (DevExpress)

Viacheslav,

This CTP build works with .NET Framework 4.5.2 and higher.

Thanks,

Alex

20 March, 2019
Tarek K. Mahfouz

Thank you very much for the updates

Is gantt chart will support Multi tasks at the same line like timeline view

Resource1 | <Task1><Task2><Task3><Task4>

Resource2 | <Task5><Task6>

instead of

<Task1>

            <Task2>

                         <Task3>

                                        <Task4>

Regards,

For more details, you can check this question

www.devexpress.com/.../ganttcontrol-multi-tasks-at-the-same-line

20 March, 2019
Maharajan Pandian

Any other additional improvements for OdataInstantFeedback Source ? or Server Mode ?

20 March, 2019
Stephen J White

@Alex

I didn't see this in the roadmap, but do you know if there are any plans to get the scaffolding wizard to work with .NET Core 2+?

20 March, 2019
Alex Chuev (DevExpress)

@Tarek:

This functionality can only be implemented as a separate control. We made a poll about it back in December (see Resource View at the end of the post):

community.devexpress.com/.../wpf-core-controls-2019-roadmap-your-vote-counts.aspx

Since the majority of customers favored other Roadmap features over the Resource View, we don't plan to work on it in 2019.

@Maharajan:

We don't plan any new features/improvements for Server Mode and Instant Feedback in 2019. If you have any requests or scenarios that currently aren't supported, please email me at wpfteam@devexpress.com to discuss the details.

@Stephen:

Are you referring to .NET Core 3? If so, our plan is to provide Scaffolding libraries for .NET Core 3 in v19.1 so that you can migrate with your existing project. Scaffolding generation in a new .NET Core 3 project is a more complex task that depends on Visual Studio integration in .NET Core 3 and many other factors. We have no estimates for this task at the moment.

20 March, 2019
Stephen J White

@Alex

Sorry, I meant scaffolding WPF Projects (documentation.devexpress.com/.../Scaffolding-Wizard) for Entity Framewrok Core 2.X+, my mistake. But I presume that is also something that doesn't have an ETA at the moment, correct?

21 March, 2019

Please login or register to post comments.