Quantcast
Channel: Developer Express Global
Viewing all 3388 articles
Browse latest View live

Blog Post: DevExpress Charts: Data Aggregation, Legend Check Boxes, and Selection (What’s New in 13.2)

$
0
0

Visualizing data is probably one of the most fantastic things one can do. That is why charting is near and dear to my heart. As we continue to develop powerful visualization components we are proactively trying to make things simpler and easier to use.

With that in mind there are a couple of features that follow the spirit of these principles.

Automatic Data Aggregation (WinForms and ASP.NET)

Data Aggregation

Charts with a lot of data are ugly because the computer just happily draws everything you give it. There is seldom a case where this is what we want to do. Enter data aggregation. Starting in 13.2, a chart can automatically aggregate its data according to the specified Aggregate function:

Automatic Scale Mode

In addition, you can manually specify a Scale Mode and Measure Unit to control how data is aggregated:

Manual Scale Mode

 

This feature becomes extremely useful when used in conjunction with zooming and scrolling in WinForms charts. Now you can immediately see trends over large swaths of data and zoom in to a specific area to get a better look at localized trends.

This will now work with both numerical and time based arguments.

Legend Check Boxes (WinForms, ASP.NET, WPF, Silverlight)

I think this picture says it all:

Legend Check Boxes

I was going to write a thousand words but I think the ability to turn series off and on is fantastic. This will work for WinForms, ASP.NET, WPF, and Silverlight and is easily activated by setting the Legend.UseCheckBoxes property to true.

This feature is also available for strips, constant lines and financial indicators.

Selection (WPF and Silverlight)

Previously we had support for highlighting specific points in a WinForms/ASP.NET chart by using the chart's SetObjectSelection method. 

Starting in 13.2 you will now have this ability in our WPF and Silverlight Charts. We've added the ChartControl.SelectedItem and ChartControl.SelectedItems properties and fully implemented the MVVM pattern for giving you the full power of WPF binding.

In Conclusion

This is by no means everything we’ve done for this release. I’ve left out a couple of things (including some neat mapping features I will talk about later).

As we continue to drive forward with our data visualization tools, we are confident that you will find incremental improvements that will simplify your process of acquiring, shaping, and visualizing your data.

As always, if there are any comments and/or questions, feel free to get a hold of me!

Seth Juarez
Email: sethj@devexpress.com
Twitter: @SethJuarez


Blog Post: Customer Request: Insert a Method’s Parameters into a Template Expansion

$
0
0

The Question

This conversation popped up on Twitter:

InsertParameters

The customer wants a list of parameters inserted into a CodeRush Template. CodeRush Templates are like Visual Studio code snippets on steroids.

My first thought: “We might have this. Let me check.”

Investigation

I opened the Template Editor options page, right-clicked the template expansion area, chose “Insert StringProvider”, and entered “param” in the Filter textbox:

SelectStringProvider

Unfortunately, nothing. StringProviders are code-based helpers located in plug-ins that deliver strings of text. I close this dialog.

CodeRush also has TextCommands, which simply execute code (any code you write) from a plug-in. Sometimes that code execution can actually insert text in the middle of a template expansion. In cases like this, a TextCommand behaves similarly to a StringProvider. So I right-clicked the template expansion area again, but this time I chose “Insert TextCommand”, and once again entering “param” into the Filter textbox:

SelectTextCommand

Unfortunately, not what we were hoping for.

So nothing we are currently shipping outputs a list of the current method’s parameters as a string. But I know we can do this pretty easily by writing our own plug-in.

My reply on Twitter goes out:

WeCanBuildAPlugIn

I return to my work, prepping for the pending release, and then it occurs to me – we can do this without a plug-in. One of the TextCommands we do ship with CodeRush is ForEach. It iterates over structural elements in your code, calling a specified template for each element found, and also optionally calling specified templates before, between, and after each element in the list.

With some clever template creation, we can get the customer exactly what they need.

CodeRush’s ForEach TextCommand

Next I bring up the CodeRush User Guide, and click the “Reference\Text Commands” node, then click the ForEach TextCommand so I can take a look at the syntax. The dynamically-generated help page (generated from the plug-in TextCommand itself) looks like this:

ForEachHelp

The ForEach TextCommand takes two required parameters (iterationBounds and the template to expand each time an element is found), and three optional parameters (firstTemplate, betweenTemplate, and lastTemplate – all names of templates to expand).

I want to create a simple comma-separated list of parameters. So I will only need to use betweenTemplate (to place a comma and a space between each parameter name found). Note that this template will only be called if there are two or more elements in the list.

Making it Work

Now things get fast and easy. Inside the template editor, I create a new template for testing, named “zzz”. This template’s expansion looks like this:


«ForEach(Parameter in Method,#AddParameter#,,#Comma#)»
 

Notes on this call:

  • Parameter in Method is the iterationBounds. That means we’re going to iterate through every parameter in the active method (the method containing the caret).
  • #AddParameter# is the name of a template I haven’t created yet. It’s going to simply insert the text of the parameter and nothing more.
  • We pass nothing in for the firstTemplate argument.
  • #Comma# is the name of a template I haven’t created yet. It’s going to simply insert a comma followed by a space.
  • As a convention, I use the hash tag symbols around templates that I call from other locations (e.g., #Comma# and #AddParameter# – but these templates could have any name you want).

 

Next I create the #AddParameter# template. It looks like this:


«?Get(itemName)»
 

This references the “Get” StringProvider, which is responsible for managing a list of variables and their values during template expansion. The ForEach TextCommand defines two variables for use in Templates – itemName (the name of the item being iterated), and itemType (that particular item’s type).

So this template is done – it’s just going to return back the name of the parameter.

Finally, I need to create the #Comma# template. This one is simple – just a comma followed by a space. I click OK to drop the CodeRush Options dialog.

Testing

I move the caret inside a method with some parameters and enter the name of my test template – “zzz”:

AboutToTest

I press the Space bar (you might press Tab if that’s your template expansion key).

I see this:

expansionSuccess

Success!

The last step is to rename our “zzz” template into something more meaningful (e.g., #ParameterList#). You can rename templates by pressing F2 when the template is selected inside the Template Editor options page.

Now whenever we need a parameter list in a template, we can right-click that template expansion, choose “Insert Alias…” (a way of calling templates from templates), and select our new #ParameterList# template to insert a list of parameters.

Going Further

Note that if we wanted to include the parameter type with each parameter, we could do that easily by modifying the #AddParameter# template to something like this:


«?Get(itemType)» «?Get(itemName)»
 

Then our template expansion might give us something like this:

 

ModifiedExpansion

Learning More about TextCommands

Here’s a video webinar Rory Becker and I recorded a while back, that introduces TextCommands and also goes into several examples of what you can do with the ForEach TextCommand:

-Mark

Blog Post: WinForms: New Themes and Design Time Enhancements (What's New in 13.2)

$
0
0

No release would be complete without a new set of app-wide themes for our WinForms users. 13.2 will ship with 3 new Visual Studio inspired themes (Blue, Light and Dark). The following is an example of the Visual Studio 2013 Blue Theme.

WinForms Theme - Visual Studio 2013 Blue

In addition to app-wide themes for WinForms, we've enhanced our design time experience (something a number of you have asked for) with Visual Studio Color Theme support across all our control designers. Once 13.2 is released, all of our designers can change skin settings to match those you've specified via Visual Studio's color theme. You'll be able to use this feature via the DevExpress menu in the IDE (DevExpress\WinForms\Use Visual Studio Color Theme in Control Designers). Here is an example of how the new themes is applied to the TreeList's custom node editor...

Visual Studio 2013 Theme

As many of you already know, 13.1 introduced Smart Tag support for our biggest WinForms control libraries (Bars, Grid, Docking, etc). 13.2 will extend this support across our product line including the controls that ship as part of the WinForms Data Editors Library (products such as BarCodeControl, ButtonEdit, CalcEdit, CheckButton, ComboBoxEdit, etc).


Visual Studio Smart Tags


Blog Post: ASP.NET: Moderno Theme (What's New in 13.2)

$
0
0

A stunning new ASP.NET theme is coming out in the next major DevExpress release, 13.2:

DevExpress ASP.NET Theme - Moderno

Moderno – Light & Sexy

This new theme is sexy. Yes, there I said it. It’s a sexy theme that feels light and fast.

What’s with the name?

We named it Moderno because it uses modern CSS3 techniques to draw many of the elements. And also because it has a clean modern look like our Metropolisthemes.

CSS3 – Less Images

CSS3 is the latest standard for CSS which provides benefits over older versions.

Benefits like borders, the ability to create rounded corners without images. Drawing boxes and shadows. With the other themes that do not use CSS3, we use images to draw many of those same great UI elements. Learn more here.

The new Moderno theme takes advantage of CSS3 to provide a clean, beautiful, and light theme.

More Padding

The padding sizes are bigger in Moderno so that the theme looks great on mobile devices too. And DevExpress ASP.NET controls have supported touch on mobile devices since 2011.

Check out the DevExpress ASP.NET GridView in Moderno:

DevExpress ASP.NET Theme - Moderno - GridView

I’m a big fan of this theme. And once you try it on your web projects then you will be too.

When only the best will do.

From interactive Desktop applications, to immersive Web and Mobile solutions, development tools built to meet your needs today and ensure your continued success tomorrow.

Get full access to a complete suite of professional components that let you instantly drop in new features, designer styles and fast performance for your applications.

Download a free and fully-functional version now: http://www.devexpress.com/Downloads/NET/

Blog Post: XAF: Easy custom members (What’s New in 13.2)

$
0
0

With our next major release (13.2), we have simplified the manner in which you are able to add custom and computed fields to existing business models. The functionality is available to both developers and end-users.

Once beta 1 is released, you can explore this new custom member functionality by exploring the FeatureCenter solution located in the C:\Users\Public\Documents\DXperience 13.2 Demos\eXpressApp Framework\FeatureCenter\CS folder.

Design time

As you know, XAF already offered the ability to create non-calculated persistent fields at design time using the Model Editor. In 13.2, we’ve extended the Application Model with an Expression attribute as illustrated in the image below.

image

When the Expression attribute has a value, XAF will create a calculated member or it will default to the creation of a persistent member. Additionally, you can create a complex expression such as the Sum of another custom field as illustrated below.

image

By design, XAF will not display these custom fields in any view since they were created manually after the Application Model was generated.

Runtime

The great thing is that in 13.2, end-users can use the runtime version of the Model Editor to create custom members and extend the business domain as discussed in the previous section.

The image below illustrates where to locate the custom member in the Windows version of our FeatureCenter (same location for the web).

image

To invoke the runtime Model Editor, end-users can execute the Edit Model action.

image

You may also want to restrict Application Model modification to certain user groups. You can do that as illustrated below.

image

Developers can restrict end-users from creating custom members at runtime by setting the static ModelMemberRequiredCalculator.AllowPersistentCustomProperties to false.

The Web Runtime

To create a custom member for the web, you can use the Standalone Model Editor and edit the Model.xafml file located in the root of the web-site.

image

Custom members are in their first release (CTP) so we look forward to your feedback as we get it ready for the official release. Let me know what you think.

Webinar: 19-Nov-2013 10:00 PST - Writing a Web App with PhoneJS from Scratch (Intermediate (200))

$
0
0
PhoneJS contains everything you need to create native client applications using HTML5 and JavaScript with a single codebase and deliver solutions that target today's most popular smartphones. Join Paul Usher and Julian Bucknall as they put PhoneJS to the test by creating a new, non-trivial mobile web app from scratch in less than an hour. They’ve been in training to build up their stamina, they’ve specially prepared their keyboards, new batteries have been installed in their mice, and now all that’s needed is you to cheer them on. Here’s the app they’ll be writing: “Welcome to TourSnap, the app that encourages you to be a tourist, snap some photos, and upload them to Facebook along with GPS coordinates and descriptions. Your family back home can enjoy your holiday snaps while you vacation!”

Webinar: 12-Nov-2013 10:00 PST - Get Started with Azure Using DevExpress ASP.NET (Intermediate (200))

$
0
0
Azure is rapidly becoming the developers choice for cloud computing; it’s fast, powerful and it's free to get started, there are also a lot of different aspects and options to consider. Paul Usher and Mehul Harry will help demystify some of the questions facing developers who want to embrace the cool technologies Azure provides. In this first MSDN webcast you will see how to create a new Azure account and create a website. Then using Visual Studio 2013 and the powerful DevExpress toolset, the guys will create a stunning ASP.NET web site demonstrating just how easy it is to build a powerful data driven site, how to incorporate data directly from SQL Azure and then how easy it is to deploy your final masterpiece directly to Azure.

TV Channel: Getting Started with Azure and DevExpress ASP.NET Controls

$
0
0
Azure is rapidly coming the developers choice for cloud computing; it's fast, powerful and it's free to get started, there are also a lot of different aspects and options to consider. Paul Usher and Mehul Harry will help demystify some of the questions facing developers who want to embrace the cool technologies Azure provides. In this first MSDN webcast you will see how to create a new Azure account and create a website. Then using Visual Studio 2013 and the powerful DevExpress toolset, the guys will create a stunning ASP.NET web site demonstrating just how easy it is to build a powerful data driven site, how to incorporate data directly from SQL Azure and then how easy it is to deploy your final masterpiece directly to Azure.
Views: 39
1ratings
Time:53:48More inScience & Technology

Blog Post: DevExpress auctions Universal license for Typhoon Haiyan relief

$
0
0

Photo of destroyed house, used with permission, copyright Eoghan Rice - Trocaire

A destroyed house on the outskirts of Tacloban on Leyte island. This region was the worst affected by the typhoon, causing widespread damage and loss of life. Caritas is responding by distributing food, shelter, hygiene kits and cooking utensils.

(Photo copyright: Eoghan Rice - Trócaire / Caritas; used with permission from Wikimedia Commons.)

Letterpress Charity Auction titleI’m sure it goes without saying that we’ve all been horrified about the news from the Philippines this past couple of weeks. Typhoon Haiyan caused incredible damage throughout the Leyte and Samar islands (part of the Eastern Visayas), destroying much of the towns, cities, and infrastructure in those low-lying islands. Houses and buildings were flattened, obliterated. Millions of people were affected by the devastation, having lost their homes, possessions, loved ones, jobs; whereas thousands of people have died or are still missing (unremarkably in this kind of disaster, even now, 10 days later, no one knows for sure how many victims there are). Wikipedia, unsurprisingly, have an extremely good article already on the typhoon and the devastation it wrought, and I’d recommend reading it.

Needless to say, relief in the form of food, housing, money is pouring into the Philippines to try and help. We at DevExpress want to do our share and so we’ve set up an auction on EBay, proceeds from which will go directly to the Red Cross to provide aid to all the victims.

On the auction block then is a single user license to DevExpress Universal. Normally this goes for $2199.99, but this time you’re in the driving seat: all proceeds will be donated to the Red Cross’ Typhoon Haiyan Relief and Recovery Fund. So bid early and often. I’ve put in my bid, so watch out. (Do note: by winning you will also get some eBay bucks for the next quarter, so it’ll be like winning twice!)

Please consider helping out the Philippines by bidding on this item.

Webinar: 19-Nov-2013 10:00 PST - Writing a Web App with PhoneJS from Scratch (Intermediate (200))

$
0
0
PhoneJS contains everything you need to create native client applications using HTML5 and JavaScript with a single codebase and deliver solutions that target today's most popular smartphones. Join Paul Usher and Julian Bucknall as they put PhoneJS to the test by creating a new, non-trivial mobile web app from scratch in less than an hour. They’ve been in training to build up their stamina, they’ve specially prepared their keyboards, new batteries have been installed in their mice, and now all that’s needed is you to cheer them on. Here’s the app they’ll be writing: “Welcome to TourSnap, the app that encourages you to be a tourist, snap some photos, and upload them to Facebook along with GPS coordinates and descriptions. Your family back home can enjoy your holiday snaps while you vacation!”

Blog Post: ASP.NET WebForms and MVC: Ribbon Control (What's new in 13.2)

$
0
0

Check out the new DevExpress ASP.NET Ribbon control for WebForms and MVC in the upcoming 13.2 release:

Ribbon History

The Ribbon metaphor was popularized by Microsoft when they included it with the release of Office 2007:

With the release of Microsoft Office 2007 came the "Fluent User Interface" or "Fluent UI", which replaced menus and customizable toolbars with a single "Office menu", a miniature toolbar known as "quick-access toolbar" and what came to be known as the ribbon: Multiple tabs, each holding a toolbar bearing buttons and occasionally other controls. -Wikipedia

And DevExpress customers have been requesting a web version for many releases now. I'm happy to tell you that the new DevExpress ASP.NET Ribbon control delivers a stunning UI and great functionality that you'd find in a rich Ribbon control.

It's Responsive!

The DevExpress ASP.NET Ribbon control is responsive:

Responsive - DevExpress ASP.NET Ribbon Control

In the animated gif above, the ribbon is covered by ASPxPopupControl to demonstrate the ribbon responsive layout.

Features 

And, you can also set up these properties:

- AllowMinimize – specifies whether or not a ribbon control can be minimized. When this functionality is disabled, the minimize button is not displayed.
- ShowFileTab – specifies the file tab visibility.
- ShowTabs – specifies the tab header visibility.
- ShowGroupLabels – specifies the group label visibility.

Adaptive Layout support

DevExpress ASP.NET Ribbon - Adaptive layout

The DevExpress ASP.NET Ribbon also provides an adaptive layout functionality. When a ribbon control has insufficient space to display all its items, groups with more than one item are collapsed, and each collapsed group displays an expand button.

Ribbon w/ Moderno Theme

And the new Ribbon control looks great in the newest DevExpress theme: Moderno.

DevExpress ASP.NET Ribbon Control in Moderno Theme

Data Binding

Data Binding - DevExpress ASP.NET Ribbon

The DevExpress ASP.NET Ribbon control can be populated with information taken from a data source using the DataSourceID or DataSource property. While binding, the control automatically creates tabs, groups and items; and retrieves their property values from the corresponding data items.

You can specify the data source fields to which the tabs, groups and items properties are mapped using the TabDataFields, GroupDataFields, and ItemDataFields properties, respectively.

Additionally, ASPxRibbon provides specific events related to data binding that can be handled according to your application logic.

- TabDataBound – allows you to customize the settings of an individual tab immediately after it is bound to data.
- GroupDataBound – allows you to customize the settings of an individual group immediately after it is bound to data.
- ItemDataBound – allows you to customize the settings of an individual item immediately after it is bound to data.
- DataBound – occurs after the control data binding is complete, and allows you to customize the control.

Templates

DevExpress ASP.NET Ribbon - Templates

The DevExpress ASP.NET Ribbon (ASPxRibbon) control also supports ASP.NET templates which allow you to customize a control's appearance and layout. You can create templates for two elements: file tab (FileTabTemplate) and item (Template).

In the image above, the FileTabTemplate property is used to replace tab text with an arrow image that invokes a popup menu.

Menu Emulation

This example demonstrates how the ASPxRibbon control can be customized to implement the look and feel of a menu. For this purpose, all items are displayed large in size (the Size property is set to Large). The following properties are used to hide ribbon elements.

- ShowFileTab – specifies the file tab visibility.
- ShowTabs – specifies the tab header visibility.
- ShowGroupLabels – specifies the group label visibility.

Client-Side Events

The DevExpress ASP.NET Ribbon control provides you advanced client-side event support. Client-side events are triggered in response to specific actions or events on the client. You can create client-side code for the following events:

- ActiveTabChanged – fires after the active tab is changed.
- FileTabClicked – fires after a file tab is clicked.
- CommandExecuted – occurs after an action is executed on a ribbon item (e.g., an end-user clicks a button or changes an editor value).
- Init – occurs on the client side after the control is initialized, but prior to its display in the browser.
- MinimizationStateChanged – occurs when the ribbon minimization state is changed.

Available for WebForms & MVC!

The new ASP.NET Ribbon is available as a WebForms control:

Ribbon for ASP.NET WebForms

And as a native ASP.NET MVC extension:

Ribbon for ASP.NET MVC

Thanks!

Blog Post: DevExpress PDF: Working with Pdf Files in Code (What’s New in 13.2)

$
0
0

DevExpress PDF Viewer

In 13.1 we released a beta for our new pdf viewer. This excellent addition to our control suite enables an in app viewing experience for your pdf documents. Given that these documents can be loaded by filename or even from a stream of bits, you have the ultimate flexibility in loading and displaying pdf documents in a controlled manner.

Consider the scenario, however, where you have hundreds (or thousands+) of pdf documents. Invariably the boss might one day ask for that one pdf document with specific text (any lawyers out there?). How does one efficiently search these documents without going opening each and every document? Starting in 13.2 we are greatly increasing your ability to manage and work with these documents within code.

var search = "parameters";
PdfDocumentProcessor processor = new PdfDocumentProcessor();
processor.LoadDocument("CSharpSpec.pdf");
var searchParams = new PdfTextSearchParameters
{
    CaseSensitive = false,
    WholeWords = true
};

var results = processor.FindText(search, searchParams);
while (results.Status == PdfTextSearchStatus.Found)
{
    var text = string.Join(", ",
                    results.Words.Select(p => p.Text).ToArray());

    Console.WriteLine("Found \"{0}\" on page {1}",
        text,
        results.PageIndex);

    results = processor.FindText(search, searchParams);
}

Console.WriteLine("That's all folks!");
Console.ReadKey();

Notice how easy it is to load up a pdf document processor and search for specific text. Now imagine doing this across your entire library of pdf documents!

Working with PDFs in Code

In the age of “big data” it is imperative that we, as developers, have the ability work with any type of data: be it structured or unstructured. Indeed the best way to derive the greatest value from our data is the ability to handle it all at once. I think this tool will greatly help with pdfs!

As always, if there are any comments and/or questions, feel free to get a hold of me!

Seth Juarez
Email: sethj@devexpress.com
Twitter: @SethJuarez

TV Channel: Writing a Web App with Phone JS from Scratch

$
0
0
PhoneJS contains everything you need to create native client applications using HTML5 and JavaScript with a single codebase and deliver solutions that target today's most popular smartphones. Join Paul Usher and Julian Bucknall as they put PhoneJS to the test by creating a new non-trivial mobile web app from scratch in less than an hour. Here's the app they'll be writing: "Welcome to TourSnap, the app that encourages you to be a tourist, snap some photos, and upload them to Facebook along with GPS coordinates and descriptions. Your family back home can enjoy your holiday snaps while you vacation!"
Views: 190
3ratings
Time:01:04:57More inScience & Technology

Blog Post: Breaking changes for 13.2

$
0
0

Today we released the beta for DevExpress 13.2, the .NET edition. If you have an active account for Universal or DXperience, you should have received an email (if our Client Services system is working properly) detailing what you have to do in order to get it. It’s pretty simple really: just go to the Download Center (after logging in of course), find the beta and download it. Install on a development machine (please, not your production machine – we may be good, but there might still be a couple of bugs left to fix ;) ) and have at it. You can find out what’s new in the release here. Please provide feedback to our support team via support@devexpress.com or by opening a ticket in the Support Center (it will be automatically marked as private for the beta feedback).

It's get your hands dirty timeI’m writing this post, though, to give you some warnings about breaking changes. If you recall, we endeavor to not introduce breaking changes in our minor releases, but major releases – of which we have two per year – are open season. Well, OK, I exaggerate for effect, but there are some breaking changes you should be aware of, and there are some known issues as well. I’ll detail some of the more significant items here in this article.

First of all, and this covers by far the longest subset of breaking changes, is that types and members that have been marked as obsolete for a year or more have been removed. If you have been skating by some of these “this thing is obsolete” warnings for a while, now’s the time to make the required changes to your code. In fact, I’d make a general recommendation: if you see something marked as obsolete, change your code now rather than wait for the proverbial rainy day. I know from bitter experience, those rainy days just never seem to turn up on time.

Breaking Changes

Now for some major breaking changes:

Dashboard

BC2012: Selection is no longer updated when using API to add or remove items in a dashboard assigned to the DashboardDesigner.

Previously, when adding dashboard items to the DashboardDesigner.Dashboard.Items collection, the last added item received selection. Similarly, when removing one or several items in code, the first remaining dashboard item was selected.  From 13.2, the selection is not updated when modifying the Dashboard.Items collection. The previously selected item remains selected after adding a new item (or selection remains empty if it has been empty before). When removing the selected item, selection becomes empty. In place of the automatic selection updates, we have introduced the DashboardDesigner.SelectedDashboardItem property that allows for manual control over selection via the API. To retain the previous behavior, make sure to assign a dashboard item to this property after adding the item to the Dashboard.Items collection. When adding or removing dashboard items in the designer's UI, the selection is updated as usual.

BC2004: The Dashboard Title is visible by default

Starting with the 13.2 version, the default value of the dashboard.Title.Visible property is true. Dashboards created previously will contain a title after loading from XML with the new version.

DevExpress WPF

BC2017: BooleanNegationConverter and DefaultBooleanToBooleanConverter will no longer invert an indeterminate value (null and DefaultBoolean.Default, respectively)

In previous versions BooleanNegationConverter inverted indeterminate values (null and DefaultBoolean.Default, respectively). These indeterminate values were treated as False and converted to True. In the current version we have changed this behavior. From now on, these converters will keep indeterminate values unchanged. Values will be inverted only if they are set to True or False. If the target property type is Boolean, any input indeterminate value will be converted to True.

DXMap (Common to XPF)

BC1980: The Template property has been removed from the MapShape class

To customize the appearance of map shapes, use the corresponding properties of the MapShape class (e.g., MapShape.Fill, MapShape.Stroke, MapShape.StrokeStyle).

eXpressApp Framework (XAF)

BC1945: Сhanges to the ISupportAppearanceCustomization interface

The ComplexWebListEditor class no longer implements the ISupportAppearanceCustomization interface. Now you implement it directly using the ASPxTreeListEditor and ASPxGridListEditor classes. The OnCustomizeAppearance method in the ComplexWebListEditor has suffered the same fate.

BC1998: The ApplicationStatusUpdater and UpdateStatusEventArgs classes are obsolete.

You should now use the XafApplication.StatusUpdating event instead of the ApplicationStatusUpdater.UpdateStatus event. Use the XafApplication.UpdateStatus or ModuleUpdater.UpdateStatus method instead of the ApplicationStatusUpdater.Notify method.

Snap

BC1991: The AppendSection method implementation has been changed to return the most recently added document section.

In previous versions, this method returned the second to last document section.

BC2014: The behavior of the DataSources and DataSource properties of the SnapControl.Document has been changed

Starting with version 13.2, the Snap document data sources are reset when creating or loading a new document. The data sources assigned to a SnapControl (SnapControl.DataSources and SnapControl.DataSource) are not affected.

Known Issues

Here are some of the known issues with 13.2.3 (the current beta version):

  • B250979 - ASPxSpreadsheet does not show documents in native Internet Explorer 9
  • B250876 - Dashboard - The drill-down feature is not available on the Web when Multiple Master Filter is enabled
  • B251001 - DXGrid (WPF and Silverlight) - A project with the GridControl does  not work in "Debug" mode if the AutoGenerateColumns property is not set to "None" in .NET Framework 4.0
  • B250858 - DXRichEdit for Silverlight - Simple View does not display any document content
  • B250378 - eXpressApp Framework - Localization - XAF satellite assemblies are not included in the installation
  • B250899 - Snap - Demo - Hyperlinks do not work in the 'IList Data Source' module
  • B250900 - WPF Demos - The StockMarket demo crashes when the mouse is hovering over the ChartControl before data is loaded
  • B250385 - XtraCharts Suite - A stacked spline area chart incorrectly draws empty points
  • B250386 - XtraCharts Suite - A 3D Stacked Spline Area is drawn incorrectly
  • B250393 - XtraCharts Suite - The client-side PointToDiagram and DiagramToPoint methods do not work when using the DateTime scale
  • B250909 - XtraReports Suite - Demo Center - Reports demos for WPF do not work

I would hasten to add though, that if you are going to test the beta with your code, to please keep our Support team apprised of any issues you may find. Please don’t assume that we know of them; yes, we are still testing and bug bashing, but we don’t want to let other bugs we don’t know about slip through the crack. Your feedback will be invaluable.

Blog Post: WinForms Map: Themes, Printing, Bing Services and More (What's New in 13.2)

$
0
0

Our upcoming release (v13.2) will include a number of enhancements to the DevExpress WinForms Map Control including theme/skin support, integrated printing, searching and routing and more.

Before I describe these features, let me try to step in front of a question that is going to be asked. That question is "what about Google Maps?" I'm going to keep my opinion of Google as a company to myself, but I will say that for us, support of Google is not an issue...the issue is a matter of licensing. Whereas Microsoft is easy to work with and has gone out of its way to work with us, Google has not. So, in short this is not a problem with our Map Control....It's a licensing issue.

Ok, with that said, let's get to the new features...

DevExpress Themes

The Map Control now supports all DevExpress Themes shipping with our WinForms Subscription. Here's how darker themes look when applied to a map...

WinForms Map Dark Theme


And here's how the map looks when using a light theme...


WinForms Map Light Theme


To select a skin and apply it to the Map Control, you need to specify the control's look and feel via the LookAndFeel property.


Microsoft Bing Services

The WinForms Map Control now supports Bing Services including, Search, Geocode and Route. As you already know, these services allow end-users to visualize any location on a map, see detailed information for a given location or create a route between two or more locations.  


WinForms Map Bing Services


Printing and Export

A highly requested feature...Our WinForms Map Control now supports printing and export. As you might expect, you can preview the map prior to printing or export - you can even control map size for optimal printing (options include Normal, Zoom, Stretch)


WinForms Map Control Printing and Export


New Map Elements and Features

This release introduces a new map visual element – map callout (annotation). In contrast to a custom element, the map callout displays as a frame, to which you can add the appropriate text.  This map callout supports selection and can be highlighted when being hovered by a mouse pointer or via touch.  Its appearance is defined by the current skin. 

WinForms Map Callout


Another great new feature is the ability of the WinForms Map pushpin to display text - often used to display route information between points. 

In addition, you can now control the display of map borders. This feature will come in handy when you print or export maps to different file formats.

And finally, performance has been improved when loading shapes with images.


Zoom and Select Specific Map Region

The Map Control allows end-users to zoom in and select a specific region and see current map information. To zoom in, press Shift+Ctrl keys and select a region on a map using the left mouse button. In addition, you can use the quick item selection function. Just press "Shift" and select a region on the map and all items that belong to this region will be selected. 




Blog Post: Let's keep raising money for Typhoon Haiyan Relief

$
0
0

The eBay auction I talked about a couple of days ago is still running, but we thought we’d like to do something more for the relief fund for the Typhoon Haiyan disaster.

We’ve been horrified about the news from the Philippines since November 7. Typhoon Haiyan caused incredible damage throughout the Leyte and Samar islands (part of the Eastern Visayas), destroying much of the towns, cities, and infrastructure in those low-lying islands. Houses and buildings were flattened, obliterated. Millions of people were affected by the devastation, having lost their homes, possessions, loved ones, jobs; whereas thousands of people have died or are still missing (unremarkably in this kind of disaster, even now, no one knows for sure how many victims there are).

We wanted to do our small part and involve our community, so here’s the deal. For the first three people who correctly answer the question below, DevExpress will donate $500 in their name to the Typhoon Haiyan relief fund at the Red Cross.  I’ll reply here once we have the winners.

I shall be very strict about what I accept as answers, so be careful when composing your comment to add below. (Also, our blog engine takes a little time to make comments visible, so don’t worry if your answer doesn’t show immediately.)

The question is:

Name the event and the year that saw Vern Troyer join the DevExpress team to launch CodeRush Xpress.

On your marks, get set, GO!

Blog Post: ASP.NET MVC: 7 New Extensions! (What's new in 13.2)

$
0
0

Check out the 7 new ASP.NET MVC extensions that we're introducing in the next major release, 13.2:

1. FormLayout

The DevExpress ASP.NET MVC FormLayout extension delivers a comprehensive form design feature set. Use the FormLayout to easily create form layouts of any complexity by combining the order and hierarchy of the provided layout elements. To create a well-designed form capable of editing Model class instances, simply add the FormLayout to the View and bind its layout item to the Model class fields.

Much like the DevExpress ASP.NET WebForms Layout engine, this new MVC extension supports the following features:

  • Data Binding
  • Seamless Integration with DevExpress Data Editors
  • Support for Third-Party Components
  • Help Text Rendering
  • Tab and Group Box Containers

2. Grid Lookup

A highly requested extension will now be available in 13.2. The GridLookup editor combines the functionality of the DevExpress DropDownEdit and GridView extensions for ASP.NET MVC to allow end-users to easily select values from a drop-down grid containing lookup items. The GridView extension is seamlessly embedded into the editor's drop-down window, providing the editor with a powerful customizable data-processing and data-representation functionality.

Like the DevExpress ASP.NET AJAX Grid Lookup, this new MVC extension supports the following features:

  • Multiple record selection
  • Advanced filtering options
  • Binding to large Datasets
  • Support for item templates

3. ImageGallery

The DevExpress ASP.NET MVC ImageGallery extension displays image collections using a tabular layout with dynamic layout adaptation, an integrated pager and a built-in image slider.

  • Loads images from a folder
  • Automatic thumbnail generation
  • Touch gesture support
  • Responsive layout
  • Endless paging support - more images are loaded when scrolling the page or by clicking the 'Show more items' button
  • Template support

4. Rating

The RatingControl extension is used to visualize end-user ratings. It also provides end-users with an intuitive interface to rate content by allowing them to select item images ("stars" by default) that represent the user’s rating.

This new MVC extension replicates the features of its WebForms counterpart and includes the following options:

  • Customizable titles for each extension item
  • Customizable number of items (stars)
  • Customizable item fill if the extension value is a fractional value
  • Customizable item images
  • Read-only mode support

5. TokenBox

The DevExpress ASP.NET MVC Token Box editor provides the ability to auto complete values from a predefined list. An end-user can select a value from the dropdown window list or type it manually.

6. Ribbon Control

The DevExpress ASP.NET MVC Ribbon extension helps you introduce the look, feel and behavior of a ribbon based UI in your application.

Learn more here.

7. Custom Color Picker

Ok, this is technically not a new MVC extension but we've added some great new functionality to it. And seven is a much better number than six. :)

The DevExpress ASP.NET MVC ColorEdit extension allows end-users to set a color of web elements with ease. You can type the value directly into the editor's text box, select a color from the color palette in the editor's dropdown window, or use the optional color picker to select a custom color. End-users can specify colors by typing directly within the edit box by using longhand or shorthand hexadecimal notation (HEX) for RGB color values (#f0f, #D8D8D8, etc.), or by using standard HTML color names ("red", "green", etc.), which are then automatically converted to color codes.

Best MVC Suite

DevExpress offers over 50 MVC Extensions now. These native ASP.NET MVC extensions help you deliver a beautiful and functional user interface for you ASP.NET MVC websites.

Download a free and fully-functional version now: http://www.devexpress.com/Downloads/NET/

Blog Post: New XtraRichEdit breaking change for 13.2

$
0
0

A quick post to point out that we’ve just made a change to the default settings of XtraRichEdit that may affect users of the control. (I say “just” because this change is not in the current beta release.)

The default font for the XtraRichEdit has changed from Times New Roman 12pt to Calibri 11pt.

If you need the previous behavior, please use the following code before creating RichEditControl or RichEditDocumentServer:

      RichEditControlCompatibility.DefaultFontName = "Times New Roman";
      RichEditControlCompatibility.DefaultFontSize = 12f;
If you have any issues, please contact our support team.

Blog Post: DevExpress Report Server: Mixed Mode, Stored Procedures, Templates, and More! (What’s New in 13.2)

$
0
0

I am excited to announce a couple of features that we’ve added to the DevExpress Report Server for our upcoming 13.2 release. The Report Server is one of the few products in the storied history of DevExpress releases where I’ve had input from its inception. I was there when we had the idea, pitched it to the company (yes we do that – maybe I should say more in a separate blog post), and released the first version. As the product continues to mature (with your excellent feedback) we feel that this is one of the most powerful and affordable ways of doing no-touch on-premise reporting. Let’s dive into some of the new features.

Mixed Mode

Previously the DevExpress Report Server would only function in either Windows Authentication Mode or Report Server Authentication mode. Now you can have both with “Mixed Mode” authentication:

Mixed Mode Settings

When in “Mixed Mode” users will now be able to choose how to log in:

Mixed Mode Login

In essence you can now allow both Windows Domain users as well as remote users with Report Server Credentials.

Stored Procedures

An often repeated feature request was the ability to seamlessly bind to result sets returned from executing stored procedures. I am happy to announce that starting in 13.2 you will now have the option to do so:

Adding Stored Procedures

Once bound the DevExpress Report Server will also display the available fields:

Stored Procedure View

The DevExpress Report Server also seamlessly handles the parameters that naturally come with using stored procedures. These parameters are automatically generated at design time (for preview purposes) as well as at report generation time (specifically when creating tasks):

Task Parameters

I think you will like the new store procedure binding experience.

Email Templates

The DevExpress Report Server sends out a number of emails to inform users of various events such as account activation, scheduled report completion, etc. These emails are quite bland. Starting in 13.2 you now have the ability to make them even uglier more beautiful! There are a number of email templates that you can now edit as part of the Server Settings:

Available Email Templates

Some of them (like most email subjects) are simple text boxes; others are much more:

Editing Email Templates

This was also one of the more requested features (we do listen).

Miscellany

Another interesting feature that we’ve added in 13.2 is the ability to select report delivery options:

Report Delivery Options

This is perfect for the case where the DevExpress Report Server is running in an internal network but reports need to be delivered to folks outside of the network: they no longer have to log on to the Report Server to view reports.

We’ve also made a number of usability improvements which I’ll let you discover as you upgrade and begin using the DevExpress Report Server. We are really excited to be pushing the boundaries between pure developer tools and end user tools: sometimes the best way to save on development time is to remove the necessity of development time.

As always, if there are any comments and/or questions, feel free to get a hold of me!

Seth Juarez
Email: sethj@devexpress.com
Twitter: @SethJuarez

Announcement: DevExpress Wins 12 First Place Reader's Choice Awards from DevPro

$
0
0
DevExpress is proud to announce that DevPro Magazine readers voted 12 of its products and services best in class in its annual Readers Choice Awards.
Viewing all 3388 articles
Browse latest View live