Quantcast
Channel: Developer Express Inc.
Viewing all 2400 articles
Browse latest View live

WinForms Navigation Pane (Coming soon in v15.1)

$
0
0

The new DevExpress Navigation Pane control was created to support the requirements of our PDF Viewer (see my previous blog post about Bookmarks). It can be best described with the animation below...

As you can see, the Navigation Pane is divided into two distinct areas - the page header and page content region.

The Page header area displays vertically aligned page headers, which behave much like traditional tabs. Each tab can display a page image and\or page caption.

By clicking a page header, you expand the resizeable page area (the pane displays the contents of the active page).  The pane incorporates its own header, which contains page caption, custom header buttons, expand\collapse button and pane expand\collapse button. Page content area is sized based upon the RegularSize property and if the AllowResize property is true, can be resized at runtime.

This is certainly not the most complex UI control we ship, but I think it has a number of interesting use-cases. What do you think? Is it something you might use in an upcoming project? Let us know!


ASP.NET Data Grid - Card View (Preview Release)

$
0
0

Check out the new DevExpress ASP.NET Card View control, providing a Microsoft Outlook-inspired Contacts View with integrated data shaping and editing capabilities:

DevExpress ASP.NET Card View - Popup Edit Form

It's part of the v15.1 release and it's packed with great features.

Card view

A card view interface provides the end-user with information on cards rather than just rows and columns of a grid table. If you've used Microsoft Outlook's Contact interface then you've experienced card view:

Based on Grid and Data View

The new ASP.NET Card View is based on the powerful DevExpress ASP.NET GridView and DataView controls. So it shares many of their great feature set and ability to databind so just about any data source.

Features

DevExpress ASP.NET Card View - Templates

This community technology preview of the DevExpress ASP.NET Card View control includes these features:

  • Server mode
  • Data sorting
  • Data filtering (the search panel, header filter, filter control)
  • Data editing ( two edit modes are provided)
  • Templates
  • Card focusing
  • Card selection
  • Built-in pager
  • Endless paging
  • Responsive UI

The new ASP.NET Card View control is also responsive! This means that once you set the Width to 100%, then the Card View control will resize with your browser. And the items inside the Card View control will expand and collapse as necessary.

Preview version (CTP for v15.1)

We're releasing it as a community technology preview. Why? Because it's a slick new control that we're still perfecting.

However, the new ASP.NET Card View control has enough of a feature set that we'd love for you to test drive and give us your feedback.

Register for v15.1 webinar

To see all the new features coming out for the v15.1 release, sign up for the "What's New for ASP.NET and MVC (v15.1)":

Click here to register

Thanks!


Your Next Great .NET App Starts Here

Year after year, .NET developers such as yourself consistently vote DevExpress products #1.

Experience the DevExpress difference for yourself and download a free 30-day trial of all our products today: DevExpress.com/trial (free support is included during your evaluation).

ASP.NET Reporting - Expression Editor (Coming soon in v15.1)

$
0
0

More good news for web developers...In our upcoming release, the DevExpress ASP.NET Reporting platform will ship an Expression Editor. 

This new Expression Editor provides a straightforward UI for the construction of expressions using predefined functions, logical and arithmetical operators against the report's data source fields.

ASP.NET Reporting - Expression Editor


As you know, Expressions have multiple use-cases. Perhaps the most important is their use as conditions for formatting rules.

Your end-users can access the list of formatting rules available for the selected control from the Appearance section of the Properties window and simply select the checkbox for each rule they wish to apply to the control. In addition, they can add or delete format rules - edit format options and conditions for existing rules.

ASP.NET Reporting - Format Rules
 

Expressions & Calculated Fields

In previous versions, to specify a calculated field’s expression, users would have to enter it manually. With this release, you are now able to build the expression using the Expression Editor -  which can be invoked by clicking the ellipse button for a calculated field’s Expression property.

ASP.NET Reporting - Expression Editor

We look forward to your feedback on this new feature....Let us know what you think.
 

WinForms Charting - New Designer (Coming soon in v15.1)

$
0
0

v15.1 will bring with a brand new Chart Designer for our WinForms Chart Control. The new Chart Designer allows you to:

Select a chart item and quickly customize it. The most common properties for the selected item are displayed within the Options Tab.

WinForms Chart Designer - Item Selection 


...If you require more complex chart element customization, you'd simply use the Properties tab.

WinForms Chart Designer - Properties
 

Easily navigate through a chart structure using the Chart Elements Tree.

WinForms Chart Designer - Element Tree
 

Drag-and-drop data fields and bind them to a chart.

WinForms Charts - Drag and Drop Binding
 

In addition, you can allow end-users to customize DevExpress Charts you ship within your app by using this same Chart Designer. To introduce this functionality to your app, you need 2 lines of code...

ChartDesigner designer = newChartDesigner(chartControl1);

designer.ShowDialog();


The following video demonstrates actual use of our new WinForms Chart Designer.


Tell us what you think - we'd love to know how many of you allow users to customize charts at runtime...

PDF Document Processor: Memory Usage and Performance Optimization (Coming soon in v15.1)

$
0
0

Both the DevExpress PDF Viewer control (for WinForms & WPF) and the PDF Document Processor (Document Generation Library) are getting performance enhancements in our upcoming release...We optimized PDF document load times and associated memory usage during load/save and load/render scenarios.

In our internal performance tests (loading a document with 3000 pages - 100MB), the new PDF Document Processor v15.1, performed quite well when compared to v14.2...

Metric

v14.2

v15.1

Adobe

Load time (seconds)

23.5

5.1

3.5

Memory (MB)

362.6

94.1

85.6






Perhaps "quite well" is an understatement - the performance numbers for v15.1 are much better than any previous version and approaching those of Adobe itself. 

These performance gains were achieved by implementing lazy document model creation and keeping weak references on document resources. This allows the control to read, manipulate and save documents of an unlimited size. Memory is only used for rendering/saving current page resources – page by page, and can be freed immediately.

In addition, images are no longer decompressed on save operations...allowing you to manipulate and save the documents with very large images even if they cant be displayed in the DevExpress PDF Viewer.

WinForms & ASP.NET Pivot Grid Controls - New Excel Data Export Engine

$
0
0

Last week I mentioned our Excel data export engine - a new capability which piggy-backs on earlier work we did for our Grid controls...

Many of you have already asked about introducing this new export option for our Pivot Grid...o I think the cat's out of the bag by now....Our WinForms and ASP.NET Pivot Grid Controls will soon ship with a much improved Excel data export engine.  Just like in our Grid controls, both performance and memory use of this new Excel export engine has been improved significantly when compared to older versions.

WinForms and ASP.NET Pivot Grid Excel Data Export

Here's a list of Pivot Grid features supported for all Excel export operations:          

  • Data Grouping (Outline)
  • Fixed Columns
  • Cell Formatting - exporting number format
  • Ability to select whether to export display text or values.

Universal Apps - We got stuff coming

$
0
0

Just a couple of quick screenshots of our DevAV app (hopefully you've seen variants of this app for WinForms and WPF)...Should give you a sense as to some of the things we have planned for Universal Apps...

Universal App Controls - Grid

Universal App Controls - Charting, Navigation and Grid

Universal App Controls - Phone Grid - List  Universal App Controls - Phone Chart

ASP.NET Data Grid - Binary Image Editor (Coming soon in v15.1)

$
0
0

In the v15.1 release, we've added editing functionality to the DevExpress ASP.NET Binary Image control. This powerful new feature provides your end-users with a fast and easy way to upload images directly to the web server:

DevExpress ASP.NET Binary Image Editor

The Binary Image control displays images from a binary stream.

ASP.NET GridView Benefits

The Binary Image control is a standalone control. And the DevExpress ASP.NET GridView uses this control when you have a BinaryImageColumn type. This means that your end-users will get the same benefits image editing capabilities in the GridView:

New EditingSettings Property

By default, the new edit functionality is disabled. To use the new edit feature, simply set the EditingSettings.Enabled property to true and your end-users can edit (upload) images.

Upload control

Btw, the new edit feature uses the versatile DevExpress ASP.NET Upload control internally to provide the upload functionality! Reuse, ftw!

Register for v15.1 webinar

To see all the new features coming out for the v15.1 release, sign up for the "What's New for ASP.NET and MVC (v15.1)":

Click here to register

Thanks!


Your Next Great .NET App Starts Here

Year after year, .NET developers such as yourself consistently vote DevExpress products #1.

Experience the DevExpress difference for yourself and download a free 30-day trial of all our products today: DevExpress.com/trial (free support is included during your evaluation).


ASP.NET Charts - Runtime Chart Designer (v15.1)

$
0
0

Over the few years we’ve had web-based charts, we’ve always had a Visual Studio-based designer for customizing and creating charts. 

Using this designer, you can specify the elements that make up a chart, such as the one or more data series, the chart types, and so on.

Feedback from customers has been positive, but – and there’s always a but – customers also wanted the same kind of functionality for their users.

So, I am happy to announce that, with v15.1, we’re releasing a brand new ASP.NET runtime charts designer for WebForms.

Before you ask, the designer is implemented as a separate control . Drop the new ASP.NET ChartDesigner control on a form, add a few lines of code that will allow the control to determine where to load and save the customized chart definition, and you’re all set: your users will now be able to customize the chart as and how they wish, in the browser of their choice.

Customization options

So what chart options can they customize? Initially, with v15.1, they’ll be able to

  • Add and remove chart elements like series, legends, titles.
  • Customize chart element appearance and layout like fonts, colors, positions of elements.
  • Manage data bindings of the series.

Register for the v15.1 webinars

If you want to see the chart designer in action together with all other new charting features, click here to register for the “What's New for Reporting & Dashboards (v15.1)”.


ASP.NET Spreadsheet Enhancements (Coming soon in v15.1)

$
0
0

In the v15.1 release, the DevExpress ASP.NET Spreadsheet control is getting some major new features:

Features

Here's the list of v15.1 DevExpress ASP.NET Spreadsheet enhancements:

Improved Copy/Paste

In previous versions, copy/paste operations only worked within a single Spreadsheet document (the Spreadsheet clipboard was used instead of the computer clipboard). End-users can now use copy/cut/paste keyboard shortcuts (Ctrl+C, Ctrl+X, Ctrl+V) to transfer data between multiple Spreadsheet documents and even between the Spreadsheet and an external application (Excel, Word, etc.).

Support for Streams and Byte Arrays (Open/Save Documents)

A new server-side API (methods and events) has been implemented so you can store, open and save documents both in the file system and in other locations (such as a database).

Worksheet Content Selection

A click on the top-left header cell now selects the contents of entire worksheet cells.

Proportional Resizing of Images and Charts

End-users can resize images and charts proportionally by dragging their corners (chart resizing requires holding down the Shift key). Resizing operations can be canceled by pressing the Esc key.

Register for v15.1 webinar

To see all the new features coming out for the v15.1 release, sign up for the "What's New for ASP.NET and MVC (v15.1)":

Click here to register

Thanks.


Your Next Great .NET App Starts Here

Year after year, .NET developers such as yourself consistently vote DevExpress products #1.

Experience the DevExpress difference for yourself and download a free 30-day trial of all our products today: DevExpress.com/trial (free support is included during your evaluation).

DevExtreme HTML5 Widgets - Data Grid Export, Fixed Columns, & more (Coming soon in v15.1)

$
0
0

We've added three major enhancements to our excellent client-side HTML5 Data Grid widget:

Excel Export

DevExpress DevExtreme DataGrid Export

This was the most requested feature of the DevExtreme Data Grid widget and I'm happy to announce that it's available in the v15.1 release!

You can now export data displayed in the HTML5/JS Data Grid widget to an Excel document (for all or only selected rows). Data is exported as it is displayed inside the grid - with sorting, filtering and grouping applied - with numbers, dates and formatting maintained.

The exporting is done on the client-side too. To learn more, join me on the webinar listed below.

Fixed Columns

The DevExpress HTML5 Data Grid allows you to anchor columns to the left or rightmost grid edge. When anchored, columns are not horizontally scrolled with the grid.

Header Filter

With this release, you can filter grid data against any column by choosing unique column values from a drop-down list (using the column header’s filter button).

Register for v15.1 webinar

To see all the new features coming out for the v15.1 release, sign up for the "What's New for DevExtreme (v15.1)":

Click here to register

I'm preparing to do a fantastic presentation and I hope to see you in the webinar.

Thanks!


Create highly responsive web apps for touch-enabled devices and traditional desktops.

From desktops to mobile devices, DevExtreme HTML5 Data Grid delivers the flexibility you’ll need to build apps that reach the widest audience and deliver touch-first user experiences to power your next great interactive website.

Download a free and fully-functional version of DevExtreme now: Download DevExtreme

XAF: Enhancements to existing modules, Entity Framework and performance (Coming soon in v15.1)

$
0
0

Notifications Module - Officially Shipping

The eXpressApp Framework's Notifications Module (which first shipped as a CTP in v14.2), will officially ship in v15.1 and can now be used in production environments. This update includes a refactored API to simplify its use, addition of new features, improved stability and performance.

We appreciate all the great feedback you provided to us as it helped us cover even more use-cases with this module.


            cid:image001.jpg@01D08F37.E74B7640


Here are a few of the new features we've included in the Notification Module:

  • Ability to open an editable DetailView for the notification record.
  • Unobtrusive notifications when only the number of items changes in the status bar.
  • Ability to display all or only postponed items.
  • Improved processing performance.


Workflow Module - Entity Framework Support

The Workflow Module integrates Windows Workflow Foundation (WF) 4.0/4.5 support into XAF. WF is a workflow management framework designed to assist you in creating more manageable, workflow-enabled applications.  By leveraging WF functionality, the Workflow Module allows you to automated long-running business processes within your XAF application - where the intermediate steps are hours, days or weeks apart. The module allows users to modify the automated processes without writing any code or visualizing complex business processes.

With v15.1, you can now integrate our Workflow Module when using Microsoft ADO.NET Entity Framework. To achieve this, we have implemented EF-compatible versions of workflow entities like EFWorkflowDefinition, EFWorkflowInstance, EFTrackingRecord, EFStartWorkflowRequest, etc., and performed other required R&D and testing work.

            cid:image002.png@01D08F37.E74B7640

Additional Enhancements to XAF's Web and WinForms UI, its Core and Performance

The ASPxDocumentViewer control is now used for report previews in ASP.NET applications (we've deprecated the old Report Viewer control.) By using this new report viewer, cascading parameters and Drill-Down report types are now supported within XAF ASP.NET applications:

              cid:image003.png@01D08F37.E74B7640


Delayed data loading for detail forms has been implemented forWinForms apps. It’s best to demonstrate this with a short video (note that an artifical pause was intentionally added to emulate loading a large amounts of data). You can manually enable this mode via the DelayedDetailViewDataLoading property of the XafApplication class, which can be set either in code or via the Application Designer. Technically in this mode, the DetailView form is displayed nearly instantly, without any data in controls and then data asynchronously retrieved from the database and the controls (e.g., editors display actual data values and the related Actions are updated) are updated accordingly. While this does not really speed things up, it helps to achieve a better UX and perception, as a user receives instant feedback, which may be useful for very complex forms. Take special note that when you enable this mode, the DetailView.CurrentObject will not be immediately available when ViewControllers are activated. Your code should take this situation into account. Our own code already handles this mode well – you can see that the standard Delete Action is activated after data loading is complete.

WinForms apps can now place Actions within the status bar. The easiest way to do this is to set the Category property of your Action to “Notifications”. For instance, this way the Show Notifications Action (the one that displays a “bell”) from the Notifications module is implemented. In addition, review the attached picture and see how I moved (without writing any code and by just using the Model Editor and its ActionDesign | ActionToContainerMapping node) the other built-in Refresh command into the status bar. Alternatively, you can make a custom template as per this document and manage placement via the XAF BarManager or RibbonControl designers.


            cid:image006.png@01D08F37.E74B7640

Another WinForms enhancement is for developers using advanced ribbon menus within their applications. It's now possible to place multiple Action Containers within a single RibbonPageGroup (watch video) and also make it possible to separately configure different menu modes for SingleChoiceActions placed within the same group. Only the required part of Actions from a single RibbonPageGroup can be mapped to the Application Menu or Status Bar. This capability is best illustrated with a short video. You can see a "View" RibbonPageGroup that originally contained two Action Containers: "View" and "Reports". We then add only the "View" container into the Application Menu. There will be more documentation on making these customizations once v15.1 is out.             

We now include a much simpler solution to open a non-persistent object's List View directly from the navigation bar or from custom Actions. The idea is to declare a non-persistent class and decorate it with the DomainComponent and DefaultClassOptions attributes...Then, handle the NonPersistentObjectSpace.ObjectsGetting event and populate the e.Objects collection as required. That's it. Subscribing to this event can typically be done on the ObjectSpaceCreated or ListViewCreated events of the XafApplication class. Internally, the new NonPersistentObjectSpace entity is automatically provided for such non-persistent ListView through NonPersistentObjectSpaceProvider, which is registered among other ORM providers at startup. See a complete example in this Support Center ticketTake special note that in WinForms you can create non-persistent objects with the New Action and navigate to the DetailView of a non-persistent record, make changes and they will automatically be reflected in the source ListView (all changes will obviously disappear after reopening the ListView). See this short video for more info.

We've reduced the number of web browser requests to the server for Web apps in the following scenarios: a) when opening a page for the first time; b) when refreshing a browser page via F5; c) when displaying a popup window. In addition, with several optimizations to the underlying types info system, we've cut startup time by~10-15%.

Hopefully you'll find all of these enhancements useful. Tell us what you think - we want to hear from all our XAF users!

WinForms Conditional Formatting - Grid and TreeList Rules Editor

$
0
0

We've had a lot of great feedback on our support for conditional formatting across platforms and products. In this release, we'll give you the ability to manipulate conditional formatting rules in both our WinForms Data Grid and Tree List - at runtime - using a dedicated designer.

The Conditional Formatting Rules Manager allows end-users to view/edit all formatting rules currently applied to the control and to create new rules as needed. 

The runtime designer ships with a comprehensive feature set and allows you to create the following condition types: 

  • based on value
  • based on date
  • based user defined expression
  • top or bottom rank values
  • above or below average
  • unique or duplicate values
  • color-scale formatting
  • data bars
  • formatting with icon sets

WinForms Conditional Formatting Rules Editor


WinForms Conditional Formatting Rules Editor WinForms Conditional Formatting Rules Editor

DevExpress Dashboard - Calculated Fields at the Summary Level (Coming soon in v15.1)

$
0
0

The upcoming release of DevExpress Dashboard includes the ability to use aggregate functions when constructing calculated field expressions. As you know, aggregate functions perform calculations on a set of values and return a single value. This allows you to pre-aggregate data source field values in a calculated field expression. The resulting calculated field is similar to a measure in multi-dimensional data sources such as OLAP cubes.

You can use any of the following predefined aggregate functions within the Dashboard Designer...

  • Avg() - Returns the average of all values in the expression.
  • Count() - Returns the number of values.
  • CountDistinct() - Returns the number of distinct values.
  • Max() - Returns the maximum value across all records.
  • Min() - Returns the minimum value across all records.
  • Sum() - Returns the sum of all values.

Let's quickly review how you can create a calculated field...Step 1 is to add a new field using the Field List's context menu.

DevExpress Dashboard - Caluclated Fields

In step 2, you must construct the expression using the DevExpress Expression Editor -  In this example, we'll navigate to Aggregate Functions and construct the following expression: Sum([Profit]) / Sum([Revenue])

DevExpress Dashboard - Expression Editor

Once the expression is complete, you can rename the calculated field. In our example, we'll rename it to Margin. 

At this point, you can simply drag and drop the new field to the desired Dashboard item. In the following example, we use Dashboard Cards to visualize the data..

.DevExpress Dashboard - Calculated Fields and Expressions

So what do you think - how likely are you to use this new feature? We'd love to hear your thoughts.

WinForms - High DPI Support (Coming soon in v15.1)

$
0
0

Thought I'd quickly mention an upcoming update to our WinForms Skins/Themes...

With v15.1, we've enhanced the appearance of DevExpress skin/theme elements to better support high resolution screens. Skin elements now automatically adjust size and margins based upon current DPI settings. The best way to articluate the improvement in rendering is with a picture. As you can see from the comparison images below, we've improved things quite a bit for high-dpi use scenarios.

WinForms High DPI Support


WinForms and MVVM (Coming soon in v15.1)

$
0
0

You may already know, DevExpress ships its own MVVM Framework - one that up until this release, was targeted to the needs of WPF developers using our controls. 

A couple of release cycles ago, we began enhancements to this framework - with the goal of making it available to WinForms developers. The good news is that with the v15.1 release, the DevExpress MVVM Framework fully supports the WinForms platform.

So what's so good about our MVVM Framework and why should you care if you are a WinForms developer? Here are a couple of things to consider...

The DevExpress MVVM Framework ships with features that are absent in WinForms, but essential to MVVM development. These missing features include bindings, commands, UI triggers, behaviors etc. Our Framework includes all of these along with a straightforward API to make WinForms app development more efficient. 

Everything that is otherwise complicated - such as command and property bindings, behaviors, services and their registrations - becomes much simpler with our built-in design-time support. You can do all these basic things with just a few clicks within the Expression Editor.

WinForms MVVM Expression Editor


The DevExpress MMVM Framework works with all third-party UI controls, but was engineered to maximize use of DevExpress WinForms Controls and Libraries. For instance, you can generate Ribbon items for your commands with a single click. If the command has a standard name (Save, Cut, New, Open etc), the Ribbon item automatically selects the appropriate image from the DevExpress Image Gallery.

To make life as easy as possible, multiple new templates have been added to the DevExpress Template Gallery. This means you can create multiple new ViewModels or generate a DataModel using the Scaffolding Wizard.

DevExpress MVVM Framework - Templates for WinForms

...The Framework also includes a set of navigation Services - helpers that can display your View as windowed, tabbed or native MDI, all without modifying the View itself.

Finally, to help you hit the ground running - we're shipping a large ‘MVVM Best Practices’ demo with lots of samples. Each example includes a live code section (modify the sample code and immediately view results). To scope into the desired example, you simply click the corresponding Demo Center button to open the solution inside Visual Studio.

WinForms MVVM Learning Center

What do you think? How likely are you to use this Framework? We'd love to hear your thoughts.

DevExpress Dashboard - Data Access Engine (Coming soon in v15.1)

$
0
0

With the v15.1 release, the DevExpress .NET Dashboard Designer includes new data access capabilities, including connection to stored procedures, use of dashboard parameters as SQL query parameters, Entity Framework/object data source binding, and more...

Dashboard Stored Procedure Support

A new Data Source wizard allows you to connect to stored procedures contained within SQL databases. You simply specify connection settings and select the required stored procedure.

Once complete, you can specify parameter values passed to the stored procedure.

DevExpress Dashboard for .NET - Data Source Wizard SQL Stored Procedures

In addition, you can pass a dynamic dashboard parameter to the stored procedure call.

Query and Dashboard Parameters

As you'll see once we ship v15.1, the Data Source wizard also allows you to pass dashboard parameters to custom SQL queries or stored procedures. To pass a dashboard parameter to a SQL query, create a query parameter, enable the Expression checkbox and select the corresponding dashboard parameter.

DevExpress Dashboard for .NET - Query Parameters

You can then change the current parameter value within the Dashboard Parameters dialog. This value will be passed to the custom SQL query.

DevExpress Dashboard for .NET - Query Parameters

You can pass dashboard parameters to stored procedure calls in a similar way.

DevExpress Dashboard for .NET - Stored Procedure Parameters


Entity Framework and Object Data Sources

This update brings with it Entity Framework and Object data sources support.

To use an Entity Framework data source for your dashboard data source, select the required context from the current project or an external assembly...and then specify the connection string to your data store.

DevExpress Dashboard for .NET - Entity Framework Support

Object data sources allow you to use custom objects as a dashboard data source. For instance, you can use either a DataSet object created at design time within Visual Studio or any class providing data.

That wraps up this post about enhancements we've made to the DevExpress Dashboard's data access engine. As always, we do welcome your feedback so please tell us what you think.

WPF Printing Library- Composite Report Printing (Coming soon in v15.1)

$
0
0

If you've used our Printing Library to output the contents of container controls such as the DevExpress Data Grid for WPF, you'll probably find this new feature quite useful...as it should reduce the number of pre-built reports you'll have to generate since you'll give your users additional options to print/render the contents of your app's UI.

v15.1 extends the WPF Printing Library with a new CompositeLink class. Much like its WinForms counterpart, CompositeLink for WPF allows you to combine multiple printing links together into a single document.

The code below demonstrates how you can use CompositeLink to print the contents of 2 DevExpress WPF Grid Controls in a single document.

using DevExpress.Xpf.Printing;
using DevExpress.Xpf.Core;
// ...
 
privatevoid Print_Click(object sender, RoutedEventArgs e) {
    List<TemplatedLink> links = newList<TemplatedLink>();
    links.Add(newPrintableControlLink((TableView)grid1.View));
    links.Add(newPrintableControlLink((TableView)grid2.View));
 
    CompositeLink compositeLink = newCompositeLink(links);
    PrintHelper.ShowRibbonPrintPreview(this, compositeLink);
}

As you can see, we create two instances of the Printable ControlLink class (one for each control we want to print) and add them to a list. We then create an instance of CompositeLink class by passing the list of links we wish to combine to its constructor. The final step is to use the generated composite link to output a preview...The final result should look something like this..

DevExpress WPF Printing Library - Composite Control Rendering

We'd love to get your thoughts on this feature - How many of you are currently rendering your UI - giving users the option to print/export the contents of UI Controls like our WPF Grid?

WinForms, WPF and ASP.NET Spreadsheet - Copy/Paste Enhancements (Coming soon in v15.1)

$
0
0

The upcoming release of our Spreadsheet control will include significantly improved algorithms for copy/paste operations across all supported platforms (WinForms, WPF, ASP.NET).

In previous versions, copying and/or moving cell contents involved working with actual data instead of creating temporary copies of source objects. This method had a number of restrictions...You were unable to copy and paste, move, drag or drop cells when a source range intersected a target range or when it was located within the target range. v15.1 eliminates these restrictions forever - you can now easily replace formulas by their calculated values with the Paste Special dialog or drag and drop selected cells in a worksheet when the target range overlaps the source range.

.NET Spreadsheet - Paste Values

This release also includes improved algorithms calculating target ranges for copied objects. Prior to v15.1, we divided the target range into separate ranges - at the same size as the source range - and triggered copy operations for each range individually. This approach had some negative side-effects....we got multiple copies of the same object instead of a single object associated with the entire target range. With v15.1, we no longer create multiple copies of the object located in the copied range...Instead we do the following:

  • If the source object range intersects the target range, the new object will not be created for certain object types and the source object will be extended to populate the union or contiguous cell range composed of the source and target ranges. 
  • If the source object range does not intersect the target range, there will be a single copy created which occupies the maximum possible range within the target range.

Let’s see how all of this actually works. For example, a user copies the third row containing a color scale conditional formatting rule and pastes it to rows 6-8.

.NET Spreadsheet - Copy/Paste Operations

Previously, the copy/paste operation would create a separate conditional formatting rule for each row in the target range.


With v15.1, we have a single conditional formatting rule associated with the entire target range. 


By using a new algorithm to calculate target ranges, we have significantly improved performance of copy and paste operations for the DevExpress Spreadsheet control. The following charts should give you an indication of what we've been able to achieve...


As always, we'd love to get your feedback - tell us what you think about this improved approach to copy/paste operations. 


 

WPF Scaffolding, App Templates & MVVM Enhancements (Coming soon in v15.1)

$
0
0

One of our primary goals when developing the Scaffolding Wizard was to generate apps that support the widest possible usage scenarios - without writing any additional code. One feature that was missing in previous versions was layout serialization. With the latest enhancements to our MVVM toolbox, apps built using our wizard can fully leverage the end-user customization power of our controls.

Layout Serialization - Save and Restore Control State

Any runtime customization applied to controls such as the DevExpress Grid or Layout Control will automatically be saved to a user settings file when the application is closed. When you reopen the application, all settings are restored, including previously active documents and their positions.

On the view side, we include a LayoutSerializationService that is responsible for saving the layout of all supported controls down the visual tree from the object it is attached to. End-users can now customize entity edit views by using the customization features of the Layout Control. The layout of open documents, such as docking states, position and size will be serialized automatically and persist across application restarts.

WPF MVVM Layout Serialization

Google Chrome Inspired App Template

A couple of weeks ago, I blogged about our new Tab Control - a UI component that closely resembles the tab control found in modern web browsers. Scaffolding users can incorporate this new control and create apps that look, feel and behave like a web browser by utilizing the new Web Browser Scaffolding View.

Standard features found in web browsers, such as tab reordering, “new page” tab and dragging a tab to a new window, are all available. This UI implementation offers the maximum use of screen real estate and is well-suited for apps that must run on smaller screens/devices. Like other Scaffolding Views, this view is based on the same set of View Models and thus relies on DocumentUIManagerService to manage opened tabs.

WPF MVVM Chrome Inspired Tabbed UI

WPF Grid Control Instant Feedback Mode

By limiting the number of queries from the database, Instant Feedback Mode allows the DevExpress Grid to display the contents of extremely large datasets. The Grid Control can bind to a table with millions of rows and be as responsive as if there were only a few hundred. Instant Feedback Mode supports both Entity Framework and WCF Data Contract services.

With this release, any scaffold collection view model can take advantage of Instant Feedback mode by substituting its base class with InstantFeedbackCollectionViewModel. This new class is generated along side of the CollectionViewModel class and serves as a drop-in replacement. The use of InstantFeedbackCollectionViewModel is the easiest way to take advantage Instant Feedback mode, while maintain all the advantages of MVVM patterns.

Viewing all 2400 articles
Browse latest View live