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

CodeRush for Roslyn 1.0.8 (preview) is Available

$
0
0

Team CodeRush continues its 45-day sprint cycles with today’s release of CodeRush for Roslyn 1.0.8. We’ve fixed bugs, improved performance, and reduced memory consumption. New features include:

Paste as XAML/SVG

Starting with version 1.0.8, CodeRush for Roslyn enables you to easily to incorporate vector graphics into your applications, with the new "Paste as XAML" and "Paste as SVG" code providers. Simply copy a graphic selection from a vector editing tool (such as Microsoft Visio®, Microsoft PowerPoint®, or Adobe Illustrator®) and then paste that vector drawing inside your XAML, or inside an HTML file as SVG.

PasteAsXaml2

Code Coverage

CodeRush for Roslyn can now collect coverage information for CoreCLR test cases in the DNX environment.

Decompiler

The CodeRush Decompiler can now search for symbols across multiple assemblies simultaneously. Search progress across for assembly is individually visualized.


DecompilerSearch 
 

We have also improved the decompilation logic to produce code that is even easier to read. The CodeRush Decompiler now understands and builds code for:

  • Members explicitly implementing an interface
  • Constructor initializers
  • Events
  • Custom event accessors
  • Indexers

Quick File Navigation

Quick File Navigation is now faster and uses less memory.

Try CodeRush for Roslyn Now

You can download the current preview version of CodeRush for Roslyn from the Visual Studio Gallery. Let us know what you think.


ASP.NET MVC Class in Europe - June 2016

$
0
0

The first classroom training we ever did at DevExpress was an ASP.NET class. This was back in 2009, and even though ASP.NET MVC had already been released then, it wasn't widely used (and that's a very polite way of putting it!). Gradually, we phased MVC content in for our class over the years, as we saw you, our customers, pick it up. Of course that is, in the end, our yardstick: since our classes cover our own products, we need to judge platform adoption by looking at the level of excitement in our customer base.

For a while now I have felt that a threshold has been reached: it doesn't make sense anymore to pretend that MVC is just a module in a different-topic class. It needs its own dedicated content, much more than it had so far, it needs its own events. Of course, with Microsoft's own developments of recent times, there are now various topics relevant to MVC developers that are of no concern to those on the WebForms platform - ASP.NET Core is the way forward for MVC and an important topic to be interested in right around now.


So, here it is: the first DevExpress ASP.NET MVC Class


As usual, the target audience of this class is international and the class language is English. All the details are available by following the link just above, including a syllabus for the class. If you have any questions, please ask - or see below!


What's the class content?

The class covers several of our ASP.NET MVC products, to varying degrees. It starts at the beginning, so you don't need much experience. There are presentation parts in the class as well as lots of practice tasks - plus of course the opportunity to ask questions and meet other DevExpress users! If you have questions about the content or the format of the class, or you aren't sure whether it's the right thing for you, please check out the class details and feel free to send us email.


When does it take place and what's the time schedule?

June 29 to July 1 2016 - three days, 9am to 5pm the first two days and roughly 9am to 3pm on the last day. There are breaks of course, so overall this comes to a scheduled total length of 16.5 hours.


And the location?

The class takes place at Häcker's Grand Hotel in Bad Ems, Germany. The location is easy to reach for customers in Germany as well as all those flying in from Europe (or indeed elsewhere!) into Frankfurt am Main airport (FRA). 


Isn't Bad Ems kind of hard to reach? I checked out Google Maps and now I'm scared!

Yeah, we've heard that before. It's not really true though! We have literally helped thousands of training class attendees reach Bad Ems in the past and we will gladly help you sort out travel arrangements or even do it for you. Feel free to get in touch and ask about it!


Sounds great, sign me up!

Excellent! Please follow this link and fill in the form at the bottom of the page. We will get back to you as soon as possible - and see you in Bad Ems! (By the way - I really recommend to go for the complete package and stay at the hotel. It's a great place, and the majority of our attendees usually stay there, which offers you a great opportunity to spend time with others who also use our products. A great additional benefit of a classroom training event!)

Webinar–Is Data Too Hot To Handle?

$
0
0

Next week, Julian and I are going to kick off the 2016 Webinar Series with a look at handling data on mobile devices.

Regardless of the type of application you are building, data is important. It may be a scoreboard, most recently used list, user details, or an entire cached copy of the works of Shakespeare, but at some point you will want to store some local data. My number one rule for mobile development is “always design with offline in mind” which guarantees you will be storing something. What would seem like a trivial task is in fact quite a minefield due to the nature of hybrid development with JavaScript and mobile browsers. Armed with DevExtreme, Visual Studio and some real world examples we will take you through a number of different options for storing data on your device including:

  • consuming WebAPI data via a custom data store
  • Demystifying the custom data store
  • Out of the box data stores
  • auto-saving when switching apps
  • debugging remotely 

Spaces on the live webinar are limited, so register today to secure your spot.

Gearing up for BASTA!Spring 2016

$
0
0

From February 29th till March 4th, the annual BASTA!Spring conference is happening in Darmstadt Germany and DevExpress is proud to be gold sponsor. John, Oliver and I will be present at our booth where we will be more than happy to give you some cool demos on our v15.2 release.

Oliver will do a number of sessions which you can check out here. I will do a session on the Managed Extensibility Framework which can be found here.

WP_20140924_13_59_28_Pro

At our booth, we’ll be doing daily raffles where we will hand out a number of prizes from soccer balls to platform subscriptions of choice, so make sure to collect your raffle ticket together with some nice goodies.

We hope to see you there!

Upcoming webinar: Give AdHoc Query Powers to Your ASP.NET Grid Users

$
0
0

March 8th at 10:00 am (PST), Mehul and I will present a really cool webinar on one of our new WebForms controls, the ASPxQueryBuilder. Though this control is in beta with v15.2, it offers a really nice way to your end users to visually create all kinds of difficult sql-based queries on the datastore(s) made available to them.

image

We will start by showing how the control works from an end-user perspective, and next, we will show what it takes to implement this control in your application.

Finally we will show you a couple of things like restricting the amount of entities shown in the query builder.

Make sure to register here

CodeRush for Roslyn 1.0.9 (preview) is Available

$
0
0

In this release, we’ve added XAML features and improved the Test Runner, Code Coverage, Debug Visualizer, Navigation and Refactorings. You can get the latest CodeRush for Roslyn on the Visual Studio Gallery. The preview is free until we release, currently expected by the summer of 2016. Details on the new features are below.

Unit Test Runner

The CodeRush Unit Test Runner now supports NUnit 3.0 framework, and test execution output is now displayed in the Console output tab:

TestRunnerConsoleOutput

Code Coverage

Code Coverage lets you filter displayed members using the Search Box:

CodeCoverageSearch

Navigation

Four new features here. The References window now supports multiple tabs. Want to find all references for the symbol at the caret? Just click the green plus button to create a new tab and instantly fill it with all the references to the symbol.

ReferencesTabs

The second neat feature is improved interaction with CodeRush’s Jump To feature. Typically you use the Jump To feature to quickly find and get to a single location of interest. But what if you want to visit multiple locations across your session? Just press Ctrl+P to pin the results in the References window, or click the References button from the Jump To window, like this:

JumpToReferencesButton

This will instantly create and populate a new tab in the References window, filled with all the locations found by Jump To. Now these locations are in a single place and persist until you close the tab or close Visual Studio.

The third new feature modifies the Jump To feature, allowing you to drill into decompiled code:

DrillIntoCompiledCode

And the fourth new navigation feature we’ve added is to bring CodeRush Classic’s Drop Marker Before Jump feature, which drops a marker automatically before you go away using the Visual Studio Edit.GoToDefinition command. This makes it easy to return to where you were (just press Escape to get back).

XAML Language Support

We’ve ported four XAML features over from CodeRush Classic: Break Apart Attributes, Line Up Attributes, Show Color (for showing and changing color references in XAML), and Import Type (to declare XAML namespace references for unresolved types).

XamlRefactorings

New Refactorings

CodeRush for Roslyn adds a new refactoring: Rename Namespace to Match Folder Structure, which renames the namespace according to the project default namespace and the path to the source code file.

And we improved Convert to String Interpolation. This refactoring is now available everywhere Use String.Format is, and is also aware of string formatting in calls to Debug.Print, Console.Write, Console.WriteLine and the StringBuilder.AppendFormat.

Debug Visualizer

We’ve added the Debug Toolbar, which lets you turn the Debug Visualizer on and off, control execution while ignoring breakpoints, step into the member at the caret position, and toggle temporary breakpoints.

DebugVisualizerToolbar

And we’ve improved the Debug Visualizer user interface to make preview expressions easier to read. In the two identical code samples below, you can see the UI from earlier versions (on top) compared to the improved version of the UI (below):

DebugVisualizerImprovements

Other Minor Improvements

  • Smart Constructor Template now allows you to initialize properties.
  • Code Cleanup and Organize Members features are now available from the CodeRush | Edit menu. 

    CodeRushCoverageMenuItems

As always, we’re interested to know what you think. Download the latest version of CodeRush for Roslyn and give it a try. Thanks for your support and feedback.

CodeRush for Roslyn Update – 1.0.10

$
0
0

Today we discovered an important crash bug in CodeRush for Roslyn 1.0.9 that results in a stack overflow when editing XAML files when the Show Color feature is enabled (Show Color is disabled by default in version 1.0.9, so this crash bug will only affect you if you’ve turned the feature on and are editing XAML files).

We have updated CodeRush for Roslyn on the Visual Studio Gallery to 1.0.10 which includes a fix for this issue.

If you’re using CodeRush for Roslyn 1.0.9 we strongly recommend you upgrade to the latest version.

DataExplorer Pro - New benefit for Universal subscribers

$
0
0

If you are a current Universal subscriber, then we'd like to introduce a new benefit for you - DataExplorer Pro. This is a full-featured DataExplorer and it's a free download from the App Store for you and your customers! In order to create and edit apps using DataExplorer Pro you will need to login using your DevExpress credentials and have a current (non-expired) Universal subscription.

Apps created using DataExplorer Pro are not compatible with the regular DataExplorer and vice versa. Right now the functionality of both versions is the same, but in the future the Pro version might get features not present in the regular DataExplorer.

So if you currently have a Universal subscription please download DataExplorer Pro and give it a try! Do you like it? Do you see it useful for your business? Missing some features? Please let us know.


What’s New in CodeRush Classic 15.2

$
0
0

CodeRush Classic (CRC) gets two new features in 15.2.

Note that most of our development effort is currently directed toward CodeRush for Roslyn (CRR) which is driven by 45-day sprints between releases. We’ll talk about new features in CodeRush for Roslyn as those releases become available.

In CodeRush Classic, we’ve found clever ways to improve the speed of Quick Nav, making it significantly more responsive.

Also, CodeRush Classic gets two new features in this release:

Code Coverage

CodeRush classic gets Code Coverage, which tells you how much of your application is covered by test cases, which can be one indicator of overall code quality. This feature is also useful when maintaining code – you can get a clear picture of how safe it is to change methods or even individual lines of code. If the code you want to change is covered by test cases, it is safer to change that code (because the test cases covering the code you want to change increase the chances you’ll know immediately if you unintentionally break something).

To see Code Coverage, you need to first run your tests from the CodeRush Unit Test Runner using one of the two orange test tube icons at the top:

 UnitTestRunner

These icons run your tests so CodeRush watches for coverage.

The orange test tube button with only a single green triangle ( RunSelectedTests ) shows coverage provided by only the selected tests.

The orange test tube button with two green triangles ( RunAllTests  ) shows coverage provided by all your tests.

Regardless of which button you press, after the test run is complete, CodeRush reports the results in the Code Coverage window, which looks like this:

 image

The Code Coverage window provides a hierarchical view of the projects in your solution, and shows the code coverage results for each member, type, namespace or project. Results are summarized in the percent graphs on the right, showing the lines of code covered over the total lines of code.

The Code Coverage window optionally shows you a code preview in a separate pane, shown in the screenshot above. Code highlighted in green is covered – that means at least one of the test cases resulted in that line of code being executed. Code with a gray background is not covered by the tests that were run.

You can bring a method of interest to focus inside the Visual Studio editor by right-clicking that node in the tree view and choosing “Go to Method”.

Paste as Xaml/Svg

This is one of the more interesting features we’ve introduced in some time, and it’s for developers who are creating applications and web sites that need scalable graphics. Up until now, creating vector graphics for your applications has been relatively painful, especially if your team lacks a dedicated graphic designer. Existing vector graphic editors are either functionally weak or they require a sequence of tedious export/import steps to get those vector graphics from the graphic editor into Visual Studio.

CodeRush Classic 15.2 solves this challenge rather elegantly, with the new Paste as Xaml/Svg code providers. Just design or open the graphic in your vector editor of choice (Microsoft® Visio, Microsoft® PowerPoint, Adobe® Illustrator, etc.), copy it to the clipboard, and then paste the graphic inside Visual Studio (inside a XAML file or an HTML file using Ctrl+V or Shift+Insert). CodeRush will convert the vector data on the clipboard into XAML or SVG automatically. You can also press the CodeRush key to bring up the CodeRush menu and choose Paste as Xaml or Paste as SVG.

To be clear, here are the steps:

1. Create or open your vector shape in the vector editor of your choice: 
VectorPowerPoint
For example, I used PowerPoint to create the gear shown above by forming a union with four rounded rectangles and a circle, and then subtracting a circular hole from the center (you can create this custom shape in PowerPoint in about 45 seconds – it’s that easy).

2. Copy your custom shape to the clipboard.

3. Paste into the XAML code or into an HTML file inside Visual Studio:

PasteAsXaml 

Of course, you can adjust properties after the paste, such as height/width, fill, stroke, etc.

Here’s the same gear that I created in PowerPoint pasted inside Visual Studio as SVG (and then copied and pasted here into this post):

<svgheight="352px"width="351px"viewBox="0 0 351 352">
 
<defs>
    <
linearGradientid="gradient0"y2="0%"x2="100%"y1="0%"x1="0%">
      <
stopstyle="stop-color: #2e75b6; stop-opacity: 0.5"offset="0%"/>
      <stopstyle="stop-color: #2e75b6; stop-opacity: 0.5"offset="100%"/>
    </
linearGradient>
  </
defs>
  <
pathd="M173,85.0625C124.3125,85.0625,84.8125,124.6875,84.8125,173.5C84.8125,222.375,124.3125,262,173,262
    C221.75,262,261.25,222.375,261.25,173.5C261.25,124.6875,221.75,85.0625,173,85.0625z M153.6875,0L192.375,0
    C197.6875,0,202,4.375,202,9.75L202,33.5625 205.1875,34.0625C219.5,37,233.0625,42,245.5,48.8125
    L252.3125,52.9375 268,37.125C269.9375,35.25,272.375,34.3125,274.875,34.3125
    C277.3125,34.3125,279.8125,35.25,281.6875,37.125L309,64.5625C312.8125,68.3125,312.8125,74.5,309,
    78.25L294.75,92.5625 297.125,95.8125C305.0625,107.5625,311.3125,120.5,315.5625,134.25L318.1875,
    144.4375 336.375,144.4375C341.6875,144.4375,346,148.8125,346,154.125L346,192.9375C346,198.25,
    341.6875,202.625,336.375,202.625L319.9375,202.625 319.1875,207.5625C316.25,221.9375,311.25,235.5,
    304.5,248L298.375,258.125 309,268.8125C312.8125,272.5625,312.8125,278.75,309,282.5L281.6875,309.9375
    C277.9375,313.6875,271.8125,313.6875,268,309.9375L257.75,299.625 257.5625,299.75C242,310.3125,
    224.3125,317.9375,205.1875,321.875L202,322.375 202,337.3125C202,342.6875,197.6875,347,192.375,347
    L153.6875,347C148.375,347,144.0625,342.6875,144.0625,337.3125L144.0625,321.3125 132.125,318.25
    C118.375,313.9375,105.5,307.6875,93.8125,299.75L90.5625,297.3125 78.0625,309.9375C74.25,313.6875,
    68.125,313.6875,64.375,309.9375L37.0625,282.5C33.25,278.75,33.25,272.5625,37.0625,268.8125L51,254.75
    46.875,248C40.125,235.5,35.125,221.9375,32.1875,207.5625L31.4375,202.625 9.6875,202.625C4.375,
    202.625,0,198.25,0,192.9375L0,154.125C0,148.8125,4.375,144.4375,9.6875,144.4375L33.1875,144.4375 
    35.8125,134.25C40.0625,120.5,46.3125,107.5625,54.25,95.8125L54.375,95.625 37.0625,78.25C33.25,74.5,
    33.25,68.3125,37.0625,64.5625L64.375,37.125C66.25,35.25,68.75,34.3125,71.1875,34.3125C73.6875,
    34.3125,76.125,35.25,78.0625,37.125L95.8125,54.9375 105.875,48.8125C114.1875,44.25,122.9375,40.5,
    132.125,37.6875L144.0625,34.625 144.0625,9.75C144.0625,4.375,148.375,0,153.6875,0z"
 
    fill="url(#gradient0)"stroke-width="1"stroke="#1F4E79"/>
</
svg>

If you would like to see how this SVG renders in your browser (with an added animated spin), click here.

So now it’s easy to create your own custom vector graphics and use them inside your XAML applications and web sites.

As always, let us know what you think.

ASP.NET AJAX Control Toolkit - New Release v16.1 and GitHub Hosted!

$
0
0

A new release of the ASP.NET AJAX Control Toolkit, v16.1, is now available. We've included new features and several bug fixes.

One Year Anniversary

Today marks the one year anniversary since DevExpress released the first version of the updated ASP.NET AJAX Control Toolkit:

March 2015 - Announcing the ASP.NET AJAX Control Toolkit - v15.1

And it has been one and half years since we took over maintenance (and care) of the ASP.NET AJAX Control Toolkit:

September 2014 - LONG LIVE The Ajax Control Toolkit - Open Source and now maintained by DevExpress

As we continue to fix and improve the ASP.NET AJAX Control Toolkit, we would like to encourage more developer interaction with this open-source library. So it's time to make a major move to help the library:

Hello Github, Goodbye CodePlex

The ASP.NET AJAX Control Toolkit respository has now officially moved from CodePlex to Github.

DevExpress ASP.NET AJAX Control Toolkit GitHub

https://github.com/DevExpress/AjaxControlToolkit/

We chose Github because it is a great community of open-source developers and projects. And because the ASP.NET AJAX Control Toolkit is an open-source project, we would love to have more developers get involved and submit their code.

If you have never used GitHub then take a look at their free great getting started guide: GitHub Bootcamp

Documentation

The documentation has been ported and is now hosted on GitHub as well:

ASP.NET AJAX Control Toolkit Documentation

Issues

The CodePlex page will now be mostly deactivated with redirect links to GitHub. If you need to report an issue, please use GitHub:

How To Report An Issue

Download v16.1

You can download the latest release here:

ASP.NET AJAX Control Toolkit v16.1

Click the download button above and the get the latest bits.

Or use the Nuget package: ASP.NET AJAX Control Toolkit Nuget package

Or download the installer and/or source from GitHub:

What's New in v16.1:

1. Features and improvements:

All controls

  • Item 27943 - Creating a сustom сontrol tutorial
  • Item 27968 - Creating a custom localization (with tutorial)

ComboBox

  • Item 27952 - New ComboBox selectedIndexChanged event HtmlEditorExtender
  • Item 26985 - Paste from MS Word (with cleanup) in HtmlEditorExtender

Rating

2. Bug fixes:

All controls

  • Item 27973 - array.indexOf(item,start) not supported < IE9
  • Item 27873 - CSS WebResource link can't be properly generated in an inherited control
  • Item 27954 - Script duplication when using config bundle

Accordion

  • Item 27975 - Accordion Breaks child UpdatePanel with UpdateMode = Conditional

AjaxFileUpload

  • Item 27754 - AjaxFileUpload control doesn't work with ASP routing

CalendarExtender

  • Item 15017 - CalendarExtender decrements date in "later" time zones
  • Item 28005 - Calendar footer text wraps outside popup bounds

Charts

  • Item 28003 - Pie chart and Bar chart backcolor
  • Item 28017 - LineChart breaks when all values are zero

ComboBox

  • Item 25711 - ComboBox issues with tabbing
  • Item 27304 - ComboBox NullReferenceException after CheckBox postback with ComboBox inside <% if { } %> in markup
  • Item 27480 - ComboBox weird behavior in Firefox
  • Item 28012 - Pressing Enter key on selecting item in ComboBox causes postback

CDN

Hosting

  • Item 27845 - Load exception in Medium trust hosting

HtmlEditorExtender

  • Item 27168 - HtmlEditorExtender Cut, Copy & Paste icons do not always show
  • Item 27197 - HtmlEditorExtender - edit text outside generated div
  • Item 27206 - HtmlEditorExtender - when creating a link, certain text causes malfunction
  • Item 27240 - HtmlEditorExtender loses content after postback in IE9
  • Item 27273 - HtmlEditorExtender removes 'br' tag during sanitization
  • Item 27281 - HtmlEditorExtender - width attribute disappears
  • Item 27299 - HtmlEditorExtender - inner item CSS class disappears
  • Item 27987 - JavaScript error when using HtmlEditor in IE11
  • Item 27999 - Toolbar action doesn't match instance of HtmlEditorExtender
  • Item 28031 - HtmlEditorExtender multiple ampersands sanitizing problem

MaskedEditExtender

  • Item 25108 - MaskedEditExtender cannot enter zero dollars
  • Item 26847 - MaskedEditExtender unexpected behavior when using separators
  • Item 27966 - Value is cleared when focusing MaskedEditExtender
  • Item 27969 - MaskedEditExtender autoComplete property typo

ModalPopupExtender

  • Item 27971 - Modal Popup incorrect z-index in tab container and update panel
  • Item 28021 - Multiple ModalPopupExtenders z-index issue

ReorderList

  • Item 9756 - ReorderList error when inserted in scrollable div

Tabs

  • Item 27212 - TabContainer forces inline style 'height=100%'
  • Item 27972 - TabPanel CSS needs updating for Mozilla FireFox
  • Item 27989 - Tabs overlap TabContainer content

Visual Studio toolbox

T326682 - Adding Ajax Control Toolkit to Visual Studio 2015 Causes Issue with Toolbox in IDE

UpdatePanelAnimationExtender

  • Item 27979 - UpdatePanelAnimationExtender - null reference at AsyncPostBackTrigger cast
  • Item 27993 - UpdatePanelAnimationExtender onUpdating never fired
  • Item 27996 - Exception when using unbound UpdatePanelAnimationExtender

ValidatorCalloutExtender

  • Item 28018 - AjaxControlToolkit ValidatorCalloutExtender does not work with UnobtrusiveValidation

Documentation:

AJAX Control Toolkit Documentation updated.

Helpful links

Helpful documentation articles are available on the CodePlex site:

Feedback

Get the latest ASP.NET AJAX Control Toolkit v16.1 release and let us know your feedback by reporting it here.

Upgrading from v7.x and below

Please take a look at the 'How to upgrade to v16.1 release' article to see how to migrate your existing ASP.NET AJAX Control Toolkit projects to the new v16.1 release.

Try DevExpress ASP.NET

We’d like to thank you for installing the DevExpress Edition of the AJAX Control Toolkit and look forward to your feedback as you begin its use.

When we took over the fabulous ASP.NET AJAX Control Toolkit, our goal was to reach those web developers who want to use great web user interface controls for their web projects and DevExpress ASP.NET provides that and much more.

Try the free DevExpress 30 day trial.

Email: mharry@devexpress.com

Twitter: @mehulharry


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).

DataExplorer Pro - New benefit for Universal subscribers

$
0
0

If you are a current Universal subscriber, then we'd like to introduce a new benefit for you - DataExplorer Pro. This is a full-featured DataExplorer and it's a free download from the App Store for you and your customers! In order to create and edit apps using DataExplorer Pro you will need to login using your DevExpress credentials and have a current (non-expired) Universal subscription.

Apps created using DataExplorer Pro are not compatible with the regular DataExplorer and vice versa. Right now the functionality of both versions is the same, but in the future the Pro version might get features not present in the regular DataExplorer.

So if you currently have a Universal subscription please download DataExplorer Pro and give it a try! Do you like it? Do you see it useful for your business? Missing some features? Please let us know.

IE8 support ending in upcoming v16.1 release

$
0
0

In the next major release of DevExpress (v16.1), we are dropping support for Internet Explorer 8 (IE8) across all our platforms (ASP.NET, XAF, DevExtreme, etc.).

Microsoft Ends Support for IE8

Back in August 2014, Microsoft announced its plan to end support for older browsers:

After January 12, 2016, only the most recent version of Internet Explorer available for a supported operating system will receive technical support and security updates. For example, customers using Internet Explorer 8, Internet Explorer 9, or Internet Explorer 10 on Windows 7 SP1 should migrate to Internet Explorer 11 to continue receiving security updates and technical support. For more details regarding support timelines on Windows and Windows Embedded, see the Microsoft Support Lifecycle site. - ieblog

Therefore, since January 2016, IE8 is no longer receiving any updates, including security updates. I’ve don't need to tell you how dangerous this is for your users. Because of these very real concerns, we’ve made the decision to remove explicit support for IE8 and we strongly encourage you to do the same, if you have not already done so.


Are you still supporting IE8? If you still have to for the indefinite future, you can use the v15.2 release, but my advice is to upgrade to the most recent and supported version of Internet Explorer.

Be aware that we are also discussing removing support for IE9 and IE10 in a future version. (For example, IE9 is only supported on Vista SP1 and support for that is being wound down.) Our advice is to migrate to IE11 as soon as is practicable.

Feedback

I would love to hear your feedback on this decision. How will this affect you?

Leave me a comment below or email me directly: mharry@devexpress.com

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).

Debugging a PhoneGap / Cordova App

$
0
0

pg

DevExtreme has to be one of my favourite tools to create mobile apps with, but it’s not without some caveats. The biggest one has to be debugging. The simulator is an amazing piece of software except for when you want to run some PhoneGap plugins, or access device specific features.  So what is the best way to handle these scenarios? Join Julian M Bucknall and myself on March 28 and learn how to use GapDebug while running your application in real-time on a device or virtual machine. 

Full details and registration can be found here

CodeRush for Roslyn: Quick Nav

$
0
0

For those who don’t already know, Quick Nav is CodeRush’s Symbol Search.

It’s what you use when you’re trying to find the declaration of some code element when you know part of it’s name.

Launching Quick Nav

The default shortcut for this feature is Ctrl + Shift + Q.

[Tip: If you’d prefer to use another hotkey to launch Quick Nav, you can customize this in the Options dialog (Ctrl+Shift+Alt+O) on the shortcuts page (IDE\Shortcuts) in the Navigation section.]

When Quick Nav is launched, you’ll see the following screen:

[Note: For demonstration purposes, I’ve loaded the source of OpenLiveWriter (A non trivial 27 project open source solution.]

image

See immediately how CodeRush provides you with maximum information regarding the symbols within the solution.

Alongside the Name of each symbol, you’ll see it’s Namespace, Project Name and File Type.

When multiple similarly named symbols are found, there should be no confusion as to the nature of these items.

Navigation

Arrow keys will let you navigate the items presented.

Enter will take you to the declaration of the highlighted items.

If you begin to type the name of some symbol, then the list will be filtered to show only those items whose name contains the characters you type.

See in the next image, how I have entered the term ‘Hyper

image

See how CodeRush has removed all items from the list which do not contain the term ‘Hyper’

Camel Case Searching

Next imagine you were looking to find the declaration of ‘TaskDialogHyperlinkEventHandler’.

You might choose to type ‘TDH’, those being the first letters of the first 3 words which make up that symbol’s name.

CodeRush responds with a list of all terms which include those capital letters in that sequence highlighting where it found the letters within the found items.

image

Show me the Options

All examples used thus far have searched the entire solution, however you may also have noticed a note in the bottom left of our screen shots.

If you tap Ctrl, you can change the default search options.

If you do so, the screen will expand to show the following:

image

As you can see these options are arranges neatly into 4 groups: Scope, Types, Members and Access. All of the items within are used to influence the items that are shown (or not shown)

Within Scope, the available items are Solution, Project, Namespace and File. Your choice of one of these restricts the symbols that are visible to Quick Nav relative to your current location.

Any combination of Types, Members and Access may also be independently chosen to suit your needs.

For those who prefer to keep their hands on the keyboard, these options may all be set/toggled using the indicated shortcut keys.
(Scope:1, 2, 3, 4 Types: C, S, I, E, D Members: M, P, V, F and Access: W, O, N, T, B)

For those who are happier to use the mouse the same options will react to a simple click.

So use Ctrl+Shift+Q to launch Quick Nav and Jump to any symbol in your solution in seconds.

.. and feel free to leave us your feedback to indicate how we might improve this and other features.

BI: Dashboards and Reporting – webinar

$
0
0

dash2

With so much information at hand in todays fast paced world of technology, it’s sometimes hard to make sense of it all. How many times have you been provided a spreadsheet that someone has painstakingly assembled from 100’s if not 1,000’s of rows of data, manually dissecting ranges, collating figures and building charts? Imagine a world where not only makes this obsolete, but also provides you with a way of looking at the data differently, just with a few mouse clicks. But, I hear you say, that might work if you have access to the corporate SQL Server, and you only have some obscure web service set up eons ago. Well friends, fear not, wether it be direct to the server, import files or other sources, the DevExpress Dashboard and Reporting tools can provide you with a number of ways to view and analyse your data ready for the next management meeting.  On Tuesday April 19, Julian Bucknall and I will show you how to get started with all the tools required to achieve some stunning results. In a one hour presentation we will cover

  • End User Dashboard / Report Designers
  • Building for other data sources
  • How to update configurations at run time
  • How to build dynamic web pages that detect presence of dashboard files
  • Sneak preview of the Web Dashboard Designer

As always, the presentation will offer you the chance to ask your questions in real time, and the recording will be available via our Youtube channel.  If you’ve ever wondered how you can achieve some stunning, dynamic, interactive dashboards then register yourself for the presentation…


Take a Closer Look at the DevExpress Web Report Designer

$
0
0

image

In this webinar Mehul and I showed you how to use the End User Web Report Designer where we talked about some topics you will run across when implementing the Report Designer in your own application.

Introduction

The Web Report Designer is a very powerful control allowing your end-users to create or customize reports inside their web-browser. When we started with the Reporting Suite, the only way to create reports was by using the designer inside VisualStudio. The report is created as a C# (or VB) class:

image

When we introduced the End User Report Designer, first for WinForms, next for WebForms and currently our WPF Designer is in Release Preview, there where a couple of things we had to take care of:

  • How do we allow end-users to modify a class based report (which is compiled) ?
  • How do we deal with different types of datasources and the metadata we need for field binding etc. during designing?

For the web designer, we had some additional things to cover:

  • How do we enable a design surface in the web browser including as much features as the desktop and Visual Studio versions?
  • What do we do with opening and storing report definitions from and to the server?

Modifying a class based report

What is actually happening within any of the End User Report Designers is that you will need to instantiate a report class and pass it into the OpenReport method of the designer.

   1: var rpt = new DevExpress.XtraReports.UI.XtraReport();
   2: ASPxReportDesigner1.OpenReport(rpt);

In the above example I instantiate a new instance of an empty report. This could instead be one of the report classes which was created with the Visual Studio designer instead.

Once you start modifying this report, those modifications need to be stored which is done in a .repx file. This file is an XML-based file which contains all changes to properties of the base report class as well as all reporting controls which were added while designing like XtraLabels, XtraImages and more.

Dealing with different types of datasources

Because the core reporting engine is used across al the technologies we support (WinForms, WebForms and WPF), this means that you can create a report definition on WinForms and use it on WebForms. This explains why we have special reporting controls like XtraLabel, XtraImage etc. Those controls have no knowledge of the rendering mechanism being used to preview a report. Because of the exact same reason, we have setup a low-level data access library for accessing al kinds of data sources. For example, normally, you cannot use WebForms SqlDatasource on WinForms project.

This DevExpress DataAccess library is also the foundation of our own Object Relational Mapping tool; eXpress Persistent Objects (XPO).

The datasources which come with this library all know how to handover the metadata (field types and names), to the designer to get the best user experience.

The Report design surface in a browser?

The Web Report Designer has a great end-user experience. This is due to the fact that it is a HTML5 / JavaScript based control which is depending on a number of well-known JavaScript libraries like: jQuery, jQuery-UI, KnockoutJS and Globalize.

By default we will submit the JavaScript libraries automatically because of a web.config setting embedRequiredClientLibraries which defaults to true:

   1:<devExpress>
   2:<settingsdoctypeMode="Html5"rightToLeft="false"embedRequiredClientLibraries="true"ieCompatibilityVersion="edge"/>

If you are adding the designer to an existing project, you might want to check whether you are already using one or more of these libraries, and decide to reference the other ones manually as well. This will help you solve version conflicts and version specific features.

If you need to reference the JavaScript files yourself, please switch the value to false.

Real World Scenario

In a typical development cycle where the Report Designer needs to be implemented, we could assume that the developer will create an initial (class based) report by using the DevExpress Reporting Wizard in Visual Studio.

This Wizard asks a couple of questions like what kind of datasource the report will work on:

image

When using the Wizard, the appropriate DevExpress DataAccess datasource objects are being created and configured so all meta-data will be available. You do not need to worry about that. This will cover most of the data access techniques used today.

Once a basic report has been created by code, this can serve as a base for new reports created by the End User Report Designer:

   1: var rpt = new MyReportCreatedByCode();
   2: ASPxReportDesigner1.OpenReport(rpt);

Adding Datasources in the designer

If you follow the steps above, and start start designing a report in your application, you will notice that things work right out of the box. This is because the wizard makes sure to use the datasource classes in the DevExpress DataAccess library.

If you would create a new report by using an instance of the XtraReport type, or a base report class with no datasources configured, you will need to add them manually to the designer.

The best way is to work with the DevExpress DataAccess connection classes as well:

   1:protectedvoid Page_Load(object sender, EventArgs e)
   2: {
   3:if (!IsPostBack)
   4:     {
   5:         DevExpress.DataAccess.Sql.SqlDataSource sql = GenerateSqlDataSource();
   6:         ASPxReportDesigner1.DataSources.Add("MS-SQLDatasource", sql);
   7:  
   8:         DevExpress.DataAccess.ObjectBinding.ObjectDataSource objds = GenerateObjectDataSource();
   9:         ASPxReportDesigner1.DataSources.Add("MyObjectDatasource", objds);
  10:  
  11:         DevExpress.DataAccess.EntityFramework.EFDataSource efds = new EFDataSource(new EFConnectionParameters(typeof(ChinookModel)));
  12:         ASPxReportDesigner1.DataSources.Add("MyEFDatasource", efds);
  13:  
  14:         var rpt = new DevExpress.XtraReports.UI.XtraReport();
  15:         ASPxReportDesigner1.OpenReport(rpt);
  16:     }
  17: }
  18:private DevExpress.DataAccess.Sql.SqlDataSource GenerateSqlDataSource()
  19: {
  20:     DevExpress.DataAccess.Sql.SqlDataSource result = new DevExpress.DataAccess.Sql.SqlDataSource("ChinookConnection");
  21:// Create an SQL query.
  22:     result.Queries.Add(new CustomSqlQuery("MyGenreQuery", "SELECT * FROM Genre;"));
  23:     result.RebuildResultSchema();
  24:return result;
  25: }
  26:  
  27:private DevExpress.DataAccess.ObjectBinding.ObjectDataSource GenerateObjectDataSource()
  28: {
  29:     DevExpress.DataAccess.ObjectBinding.ObjectDataSource result = new DevExpress.DataAccess.ObjectBinding.ObjectDataSource();
  30:     result.Name = "ObjSource";
  31:     result.DataSourceType = typeof(ItemList);
  32:     result.Constructor = new DevExpress.DataAccess.ObjectBinding.ObjectConstructorInfo();
  33:return result;
  34: }

The example above illustrates adding three kinds of different datasources.

The first one is an SqlDatasource which can be used if you’re using an SQL based data access technique already. You can see that the SQL statement is specified in the GenerateSqlDataSource method.

The second one is an ObjectDatasource which can be used if you’re using an object based data access technique. In this case the type of the collection needs to be specified as shown in the GenerateObjectDataSource method.

The last one, the EFDatasource, is by far the most easy one and works really well if you are using Entity Framework as data access layer. Here we just need to specify the type of the DbContext class used in Entity Framework and all entities are available in the designer.

Common issues with Datasources

It could happen that in your situation non of the above datasource types work. In that case, you can add your datasources to the End Report Designer. There are some additional things you need to do.

In the webinar I showed that when you just add a ASPNET SqlDatasource to the Designer, things will not work properly. Most important, the designer is unable to determine what fields are available in the Datasource:

image

As you can see Genres1 and Items1 are missing the expand arrows which means that I have tried to expand them. The Report Designer was unable to fetch the meta-data because it doesn’t know how to serialize that to XML and pass it on to the client.

In the example, the most easy way is to change the datasources to a DevExpress.DataAccess.Sql.SqlDatasource and a DevExpress.DataAccess.ObjectBinding.ObjectDataSource because those classes are able to properly serialize without any additional coding. This is what I did during the webinar.

Serialization

image

To get some unsupported datasource to serialize the required information properly to the client, it is necessary to create a custom serializer which is able to serialize your custom datasource.

This is done by creating a class implementing the DevExpress.XtraReports.Native.ISerializer interface.

   1:publicclass MyDataViewSerializer : DevExpress.XtraReports.Native.IDataSerializer
   2: {
   3:publicconststring Name = "MyDataViewSerializer";
   4:  
   5:publicbool CanSerialize(object data, object extensionProvider)
   6:     {
   7:return (data is DataView);
   8:     }
   9:publicstring Serialize(object data, object extensionProvider)
  10:     {
  11:         DataView v = data as DataView;
  12:if (v != null)
  13:         {
  14:             DataTable tbl = v.ToTable();
  15:             StringBuilder sb = new StringBuilder();
  16:             XmlWriter writer = XmlWriter.Create(sb);
  17:             tbl.WriteXml(writer, XmlWriteMode.WriteSchema);
  18:return sb.ToString();
  19:         }
  20:returnstring.Empty;
  21:     }
  22:publicbool CanDeserialize(stringvalue, string typeName, object extensionProvider)
  23:     {
  24:return typeName == "System.Data.DataView"; 
  25:     }
  26:publicobject Deserialize(stringvalue, string typeName, object extensionProvider)
  27:     {
  28:         DataTable tbl = new DataTable();
  29:using (XmlReader reader = XmlReader.Create(new StringReader(value)))
  30:         {
  31:             tbl.ReadXml(reader);
  32:         }
  33:returnnew DataView(tbl);  
  34:     }
  35: }

After creating this serializer, it should also be registered to the reporting engine which can be done in the Global.asax.

   1:void Application_Start(object sender, EventArgs e)
   2: {
   3://...other code...
   4:     SerializationService.RegisterSerializer(MyDataViewSerializer.Name, new MyDataViewSerializer());
   5: }

The last step for using the serializer with a report is to add the serializers Name constant to the report.Extensions dictionary.

   1: var rpt = new DevExpress.XtraReports.UI.XtraReport();
   2:rpt.Extensions[SerializationService.Guid] = MyDataViewSerializer.Name;
   3: ASPxReportDesigner1.OpenReport(rpt);

So depending on the scenario, I would suggest to try and use any of the DevExpress provided datasource classes, and leave the custom serializer as a last resort.

Opening and Saving report definitions from and to the server

Specially with the Web Report Designer, the client (browser) is not aware of how and where the report definitions are stored on the server. This might be on the local (server) file system or in a database or maybe even on some cloud storage.

To support as much storage solutions as possible, the Report Designer is depending on a ReportStorageExtension. You, the developer, need to create such a storage extension and register it with the Report Designer in the Global.asax.

If you start creating such a StorageExtension, you will need to derive this class from the DevExpress.XtraReports.Web.Extensions.ReportStorageWebExtension base class and override a  number of methods where you put in your own storage logics.

   1:publicclass FilesystemReportStorageWebExtension : DevExpress.XtraReports.Web.Extensions.ReportStorageWebExtension
   2: {
   3:publicoverridebool CanSetData(string url)
   4:     {
   5://... your implementation ...
   6:     }
   7:  
   8:publicoverridebyte[] GetData(string url)
   9:     {
  10://... your implementation ...
  11:     }
  12:  
  13:publicoverride Dictionary<string, string> GetUrls()
  14:     {
  15://... your implementation ...
  16:     }
  17:  
  18:publicoverridebool IsValidUrl(string url)
  19:     {
  20://... your implementation ...
  21:     }
  22:  
  23:publicoverridevoid SetData(XtraReport report, string url)
  24:     {
  25://... your implementation ...
  26:     }
  27:  
  28:publicoverridestring SetNewData(XtraReport report, string defaultUrl)
  29:     {
  30://... your implementation ...
  31:     }
  32:  
  33: }

When you are ready to start using your own storage provider, you need to register it in the Global.asax by using the following method:

   1:void Application_Start(object sender, EventArgs e)
   2: {
   3:     DevExpress.XtraReports.Web.Extensions.ReportStorageWebExtension.RegisterExtensionGlobal(new FilesystemReportStorageWebExtension(this.Context));
   4://... other code ...
   5: }

In the webinar, I showed a storage extension which will show an ASPxPopupControl containing an ASPxFileManager and some ASPxButtons and an ASPxTextBox to select a folder on the web-server. The controls in the popup are positioned by an ASPxFormLayout control, and this setup is pretty easy to extract and move it in your own project without modifications.

This demo is included in the demo project on GitHub and also shows you how to perform client operations (like the popup) in combination with the server-side storage extension.

Do note that there are some more files needed for this kind of report management like the JavaScript files in the ~/Scripts folder and the ~/FileDialogControl.ascx. This demo is a good example on how to have the client controls communicate with the server by using an ASPxCallback control.

As soon as you have registered a storage extension, you will also notice that the amount of menu items in the designers menu has increased:

image

Customizing menu-items in the designer

When using a more advanced Storage Extension like the one in the webinar project, there is need to customize the Designers menu as well.

There are a number of things you can do to customize the menu-items:

  • Add custom items with custom behavior
  • Change the behavior of existing items in the menu

Add custom items with custom behavior

Adding menu-items is a pretty straightforward process because of the MenuItems collection property of the Report Designer. This property holds any number of menu-item definitions where you can specify things like Text, JSClickAction, Visible, ImageClassName and some more.

   1:<dx:ASPxReportDesignerID="ASPxReportDesigner1"runat="server"ClientInstanceName="reportDesigner">
   2:<MenuItems>
   3:<cc:ClientControlsMenuItemJSClickAction="function() {alert('check me');}"Text="Super duper action"/>
   4:</MenuItems>
   5:</dx:ASPxReportDesigner>

Change behavior of existing items in the menu

In case of the demo storage extension, I needed to change the default click behaviour of the Open and Save (As) menu-items. For this purpose, we have introduced a ClientSideEvents property CustomizeMenuAction which will be executed when composing the menu.

   1:<dx:ASPxReportDesignerID="ASPxReportDesigner1"runat="server"ClientInstanceName="reportDesigner">
   2:<ClientSideEvents
   3:CustomizeMenuActions="reportDesigner_CustomizeMenuActions"/>
   4:</dx:ASPxReportDesigner>

The JavaScript function for this particular demo looks like this:

   1:function reportDesigner_CustomizeMenuActions(s, e) {
   2:var defaultOpenAction = e.Actions.filter(function (x) { return x.text === 'Open'&& x.imageClassName !== 'reportDesignerIconOpen' })[0];
   3:var defaultSaveAction = e.Actions.filter(function (x) { return x.text === 'Save'&& x.imageClassName !== 'reportDesignerIconSave' })[0];
   4:var defaultSaveAsAction = e.Actions.filter(function (x) { return x.text === 'Save As'&& x.imageClassName !== 'reportDesignerIconSaveAs' })[0];
   5:  
   6:if (defaultOpenAction)
   7:         defaultOpenAction.clickAction = reportDesigner_Open;
   8:  
   9:if (defaultSaveAction) {
  10:         defaultSaveClickAction = defaultSaveAction.clickAction;
  11:         defaultSaveAction.clickAction = reportDesigner_Save;
  12:     }
  13:  
  14:if (defaultSaveAsAction)
  15:         defaultSaveAsAction.clickAction = reportDesigner_SaveAs;
  16: }

What happens here is that I locate the menu-items I want to modify in the e.Actions collection. In this case, we check by text as well as imageClassName to make sure it is the correct one.

If the particular item was found, I simple map the clickAction to the appropriate function.

Github Repo with Demo project

The complete demo create during the webinar containing all subjects in this blog can be cloned or forked at my GitHub repo at: https://github.com/donwibier/DXWebReport

You can also find other projects created during previous webinars.

Accompanied Support Center Tickets

The foundation of the webinar and this blog post where a number of most-viewed support center issues concerning the Web Report Designer.

These tickets with their answers are listed below:

You can find a lot more answers on various topics of the complete DevExpress product line. If you can’t find your answer, just post your question in a new ticket and we will find an answer for you.

CodeRush for Roslyn 1.0.11 (preview) is Available

$
0
0

As we’re in the final stretch for the first official CodeRush for Roslyn release, today we offer what may be our final pre-release for you to test-drive. Here’s what’s new and improved in this version:

Code Analysis

In this version we introduce code analysis through the Code Issues window, showing potential logic errors and code smells found in the code. Just open your solution, bring up the Code Issues window, and click Refresh to analyze your code.

CodeIssues

Code Style

Code Style gets an update with new options for:

  • Implicit/explicit declaration of local variables
  • Visibility modifiers (always specify or remove if possible)
  • Prefer CLR type name or language-specific keywords (e.g., int, string, bool)
  • Use this/me qualifier for members

Styles are applied automatically when executing refactorings or expanding CodeRush templates. We have also linked the following code cleanup providers to the code style rules:

  • Apply variable declaration style
  • Apply built-in type style
  • Apply ‘this’ qualifier style
  • Apply visibility style

And we’ve added new naming conventions for newly-declared identifiers.

XAML Navigation

Two new XAML navigation providers:

  • Go to Source – Opens the resource dictionary for the active reference when you press F12.
  • Find Usages – Helps you quickly navigate to a particular resource reference.

JumpToXamlReference

JumpToXamlLocations 

Settings Import/Export

In this version you can import/export your CodeRush for Roslyn settings.

Test Sessions

The Test Runner now supports multiple test sessions:

Test Sessions

This is a convenient way to group collections of related tests and run them independently. Just right-click on one of the test or fixture icons in the tree list and choose “Add to session”.

 

Standalone Decompiler

The Decompiler is now its own standalone executable, which means you can use the Decompiler outside of Visual Studio. The executable is located in the "Decompiler" folder inside the CodeRush for Roslyn Extension folder (which typically has a uniquely generated folder name). To find this folder quickly, from Visual Studio use the CodeRush | Support | Extension Folder... menu item.

Decompiler

Navigation

Symbol and File navigation windows are more responsive. When they appear start typing for what you are looking for and they’ll populate with entries matching your filter.

The navigation windows also include a few minor visual tweaks to improve clarity.

CollectingItems

Refactorings and Code Providers

We have added the following refactorings and code providers:

  • Convert to Constant– convers a variable or field into a constant.
  • Create Backing Store– converts an auto-implemented property to a property that encapsulates a private field (the field backing store is created automatically).

Organize Members now allows you to configure the amount of line breaks between groups and between members. In this release it is also possible to configure Organize Members so that it removes existing line breaks.

Debug Visualizer

The Expression Map has been ported from CodeRush Classic:

 ExpressionTree
Also, strings containing long file paths are now trimmed so that the beginning and end of the path are always visible.

IntelliRush

  • Argument insertion can now be disabled for method calls created by IntelliRush.
  • Optional parameters are no longer inserted into method calls.
  • Constructor overloads are now listed in the IntelliRush overloads menu:

ConstructorOverloads

Smart Semi-colon

It’s finally here. The feature that gives C# developers the smallest gain, hundreds of times a day. With this C# feature enabled, CodeRush for Roslyn automatically places a semi-colon at the end of the expression when a semi-colon is manually typed inside an expression.

Other Improvements

  • Code view sections in both the Decompiler and Code Coverage windows include line numbers.
  • Selection Embedding is now available from the “light bulb” menu, which can be invoked using the Ctrl+~ or Ctrl+. hotkeys.
  • The languages supported by Code Templates and Selection Embeddings has been extended. You can now define custom code templates and embeddings for XAML, XML, HTML, JavaScript, CSS and F# languages.
  • The CodeRush menu gains the following items:
    • Support
      • CodeRush Logs (used to quickly open the logs folder in Windows Explorer)
      • Extension Folder (used to quickly open the root extension folder in Windows Explorer)
    • Shortcuts (opens the shortcuts options page)
    • Code Templates (opens the code templates options page)

Give it a Try

Download the latest CodeRush for Roslyn preview from the Visual Studio Gallery. Try it out and let us know what you think.

CodeRush for Roslyn 1.0.11 is now available

$
0
0

By now, CodeRush for Roslyn (CRR) preview version 1.0.10 will have expired.

This can mean only one thing……..

CRR version 1.0.11 is now available!!!

Update: Release notes are available here

PSA:
--------------------------------------------
However it appears that for the moment, for some people, Visual Studio is having difficulty locating extension updates.

Normally the typical method of upgrading CRR would be

  • Let Visual Studio detect and notify you of said upgrade’s availability.
  • Allow Visual Studio to download and apply the upgrade.
  • However as we suggested, this isn’t working at the time of writing.

    Fear not dear developer, for we have you covered.

    If you visit the Visual Studio Gallery via this link, you will be able to download the upgrade directly from the gallery, and by-pass the issue currently stopping Visual Studio from assisting you in your upgrade.

    We are quite sure the Visual Studio will not have this issue for long, but we wanted to make sure that nothing stood between you and the latest version of CodeRush for Roslyn.
    --------------------------------------------

    DevExpress VCL Subscription supports RAD Studio 10.1 Berlin

    $
    0
    0

    We recently released v15.2.5 of the DevExpress VCL Subscription to our subscribers. There were a couple of hidden new features in there, and I wonder how many people spotted them before reading this official announcement.

    The first new feature was support for RAD Studio 10.1 Berlin, which was released a day or so ago. So if you have already installed RAD Studio Berlin (or are about to), you can immediately download v15.2.5, install it, and be productive in moments.

    The second new feature is a new control, the Tile Bar Control. We were so pleased with the way this control turned out that we decided to publish it as part of a minor version so you could use it immediately in your applications, rather than having you wait for v16.1. So, what is a Tile Bar Control? Basically, the Tile Bar implements a tile-based menu. It consists of equal-sized tiles arranged in a single row.

    DevExpress VCL Tile Bar Control

    Furthermore any tile can have a dropdown associated with it. In this case, the tile displays a dropdown button on the side. In the image above the Products and Customers have this dropdown. Here’s the result of clicking the button:

    DevExpress VCL Tile Bar Control: dropdown

    As can be deduced from looking at the images, the Tile Bar control is fully touch-capable.

    To show how to use this new Tile Bar, we’ve added a new demo application: the Touch-enabled Hybrid sample application.

    Please download v15.2.5, install into RAD Studio 10.1 Berlin, and take a look at this new control. Let us know what you think.

    XAF Goes Mobile: CTP Version Ships with v15.2.9

    $
    0
    0

    The eXpressApp Framework team has been working hard to add a mobile UI option to your existing or new projects and we are ready for the first public preview. This new feature will let you easily create iOS and Android apps in addition to WinForms and ASP.NET UI options already available to you. The mobile apps will reuse the database, as well as certain aspects of the data model, application logic and UI settings of your existing XAF applications. This will help you avoid all the routine work that would take days or weeks of development efforts if building those mobile apps from scratch.

    XAF Mobile App UI

    We’ve already shown this functionality to a small group of XAF developers at the end of last year and got lots of useful feedback. The team has fixed issues and incorporated a number of improvements and we now feel that the framework is ready to go public. 

    Certain aspects of the new functionality will change and we'd like to think that your feedback will play an important role in that. Please use the resources in this email to evaluate the new features and share your opinion with us.

     

    Review the Demo App

    Start your evaluation by reviewing a sample mobile application hosted on Azure. Either use the browser-based simulator or try it on your smartphone by simply scanning the QR code.

    Run the Demo

     

    Build a Mobile App Yourself

    We encourage you to follow the tutorial below to create a mobile app based on your own XAF solution. The article uses the Project Manager demo as an example, but you can apply the same steps to any XAF project.

    Follow the Tutorial

     

    Review Frequently Asked Questions

    To learn more about the capabilities and limitations of the XAF Mobile UI, review the knowledge base article that answers the most frequently asked questions.

    Read FAQ

     

    Complete the Survey: Help Prioritize Future Development

    Complete the following survey so we can learn more about the types of application you’re looking to build. We know your time is valuable so we’ve limited it to only 5 questions and the entire survey shouldn’t take longer than 10 minutes.

    Complete the Survey

     

    Contact Us via the Support Center

    We are also looking forward to your reports via the Support Center. Please submit separate tickets for each problem or question for better tracking. Thank you for your help!

    Viewing all 2401 articles
    Browse latest View live