What's New in CodeRush & Refactor! Pro 9.1

01 April 2009

9.1 is out. Here's what's new in CodeRush and Refactor! Pro since 3.2:

New Version Number. We are now synchronizing our version numbers and releases with the rest of the DXperience product line. Here's how you can make sense of the version number:


Faster Performance. Performance should be noticeably faster in most areas of the product, especially on large projects. Startup time, project opening time and editing performance have all been affected by this work.

Reduced Memory Footprint. Memory usage has been reduced significantly, and should be especially noticeable when working with large projects.

Code Issues. Code issue technology is now shipping. This new technology shows redundant code, hints, warnings, errors, and design-related problems (a.k.a. "code smells") while you work, and also binds to CodeRush's CodeProvider technology and Refactor! Pro's refactoring technology, so you can quickly apply fixes to a number of detected issues.



Feature Control. Now when a CodeRush feature executes, you'll get confirmation and an instant way to keep that feature active or disable it. For example, if our default shortcut conflicts with an existing Visual Studio shortcut, you'll have an opportunity to decide which feature wins. Here's an example:

When the modeless feature control window appears, you can:

  • Ignore it and simply continue to work.
  • Click one of the "Always do this" links to enable or suppress the feature.
  • Click one of the shortcut links (e.g., "Tab" in the screen shot above) to change the shortcut binding to something else.

Note: If you disable a feature, you can re-enable it on the Core\Features options page.

HTML Selection Embedding. You can embed HTML selections in a variety of useful tags, including:

  • Bold (<strong>)
  • Italics (<em>)
  • Underline
  • Anchor
  • Div
  • Paragraph
  • Table

Just select the text you want to embed and press the CodeRush/Refactor key (Ctrl+` by default), select "Embed Selection" and the tag you want to wrap with.


HTML Templates. We've added powerful new templates for HTML developers. These templates appear in the CodeRush Training window (DevExpress | Tool Windows | CodeRush). Supporting both ASP.NET and raw HTML, these templates make it much easier to create content from the source window. Here's a partial list of HTML templates in this release (use the CodeRush Training window to see them all):


These HTML templates are smart and will generate unique values for the ID, Name, and Value properties as needed.

The table templates (.t, .thf, and t appearing in the screen shot above) include UI that makes it easy to create tables of any size. For example, I can create a 2x5 raw HTML table in four keystrokes (".t", Space to expand, followed by Enter to accept the table dimensions).


HTML Cell Navigation. Once you have your table, you'll want to navigate through its cells. We've made this easy, too. Just press the Tab key when the caret is inside a table cell, and Cell Nav will take you to the next cell in the table.


And of course Shift+Tab takes you to the previous cell.

Cell Nav even understands cells that span multiple columns:


And you can use the mouse to get to the cell you're interested in.


Now that you can navigate quickly through your tables, we thought you'd also want to be able to navigate just as efficiently through the items in your list controls (e.g., DropDownList, BulletedList, select, etc.). And so you can. Just press the Tab key to navigate through the items.


CodeRush developers familiar with Tab to Next Reference are no doubt beginning to detect a pattern here. :-)

New Refactorings. This release includes a few new refactorings:

  • Compress Assignment. Compresses this assignment to a short form assignment. For example, converts "a = a + b;" (in C#) to "a += b;".
  • Expand Assignment. Expands this short form assignment to a full assignment.  For example, converts "a += b;" (in C#) to "a = a + b;".
  • Split Using Statement. Splits this multi-declaration using statement into two or more neighboring using statements.
  • Sort Namespace References. Sorts namespace references in the current file.

Code Providers. There are some powerful new code providers (including a spell checker!) as well:

  • Declare Properties. Generates auto-implemented properties for an object initializer expression.
  • Declare Fields with Initializers. Adds fields and initializes it to each parameter of a constructor.
  • Declare Property with Initializer. Adds an auto-implemented property and initializes it to the parameter under the caret.
  • Declare Properties with Initializers. Adds auto-implemented properties and initializes them to each parameter of this constructor.
  • Declare Method (abstract). Generates an abstract method for the method call with appropriate parameters.
  • Convert to Procedure. Converts a function that returns an object into a method that returns void (or a Sub in VB).
  • Convert to Function. Converts a method that returns void (or a Sub in VB) into a function that returns an appropriate type. Note: I use this one frequently. Just add a value to a return statement inside a proc, place the caret on the return keyword, and press the CodeRush/Refactor key.
  • Convert to Auto-implemented Property. Converts an unimplemented property into an auto-implemented property.
  • Convert to Property with Backing Store. Converts an unimplemented property into a property with backing store.
  • Spell Checker. Corrects a spelling error in a comment or string.

We hope you enjoy this new release. We're not finished with our work on performance and memory. We expect the 9.2 release to be even faster with an even smaller footprint. Looking forward to your feedback on 9.1.

Oh, one more thing! CodeRush, Refactor, and a host of other DevExpress products are in the running for the asp.net PRO readers choice awards. Please vote for your favorite tools and controls. Thanks to everyone in advance!

31 comment(s)
Juan Carlos Chávez Trinidad

Excelent Product !!!!

1 April, 2009

Great Stuff...

Can you guys update the cheat sheet from community.devexpress.com/.../source-documents-for-the-coderush-quick-start-sheet.aspx also?

1 April, 2009
Grant Levy

I'm thrilled that CR and R! Pro are finally going to synchronize their releases with the rest of the DXperience products.  Hopefully this means that we won't have to wait so long for public bug fixes and new features since the DXperience updates normally come about every 3-4 weeks.  Fantastic!

1 April, 2009
Topics about Technology » What’s New in CodeRush & Refactor! Pro 9.1

Pingback from  Topics about Technology  » What’s New in CodeRush & Refactor! Pro 9.1

1 April, 2009

Hello Guys..

This product sometimes teaches me how to write a nice and cleand code... Marvelous product.. Thanks.

2 April, 2009

I've never used CodeRush before (but am interested). What is the performance impact when using Visual Studio? Is there any documentation on this issue?

2 April, 2009


In terms of my laptop fearures, I can surely say that my computer is crap... (needs to be changed thou.. Soon:))  However, I have not dealth with any negavice performance impact when using in VS. I have been using it since mid of 2008, it is a great tool.. As I have said on my previous post, it is a good code helper first of all... and helps you to write code quickly with the coding standards... Also, it enouth resources on www.devexpress.com

Personally, I highly recomment you to have this tool..

have fun!

2 April, 2009
Reflective Perspective - Chris Alcock » The Morning Brew #320

Pingback from  Reflective Perspective - Chris Alcock  » The Morning Brew #320

2 April, 2009

There had an impact, small impact on Visual Studio (2008). But I feel a difference with this version in the good sense.

Mark could you check this :


2 April, 2009

You've been kicked (a good thing) - Trackback from DotNetKicks.com

2 April, 2009
Mark Miller (DevExpress)


Send me an email and let's discuss this further. markm at the DevExpress domain.

2 April, 2009
Aaron Smith

+1 for what Kris said. I started tracking the feature request in there. We use mbUnit.

2 April, 2009
Dew Drop - April 2, 2009 | Alvin Ashcraft's Morning Dew

Pingback from  Dew Drop - April 2, 2009 | Alvin Ashcraft's Morning Dew

2 April, 2009
Steve Bohlen

+1 for other unit test frameworks support in the templates.  In the past its been (mostly) a simple matter of...

*exporting my CodeRush settings

*doing Search+Replace on Nunit --> MbUnit

*doing Search+Replace on TestFixture-->Fixture

*importing my settings again

...but as the unit test frameworks for .NET start to diverge more and more this becomes more and more difficult to 'apply' to every subsequent CodeRush release.

Mark:  I'd be VERY interested in some kind of community-supported submission model for unit-test-support CodeRush templates if in fact DevExpress doesn't want to commit the resources to support the growing (and steadily syntactically-diverging) .NET unit test frameworks that are out there.

I would be imagining a model where DevExpress could take a definition of unit-test-related template settings contributed by the community for each of the diff unit test Fx out there and then distro them with CodeRush (or even DXCore if approp).  Users would decide at install-time what Fx support they wanted and the proper parts of the template defs could be installed at that time.

This is (somewhat) similar to the model that is used for TestDriven.NET to support all of the different testing Fx out there and also the way the ASP.NET MVC guys permit the unit test fx authors to give MS a 'proivider' for their Fx that allows the "New MVC Projecet Wizard" to offer to support each of their testing Fx's in the 'select a test framework' combo box during project creation.

Does this make any sense --?  Looking for a balance that would allow passionate CodeRush adopters who just happen not to use NUnit to work with you guys to permit solution to this issue without DevExpress chasing every unit test fx author out there and asking them to provide a template collection.

Thoughts --? (sorry this is ALOT off-topic for your post~!)

2 April, 2009

I. Just. Love. It. All.

2 April, 2009
Mark Miller (DevExpress)

Steve, send me an email as well and we can discuss. I think we can apply the resources to supporting all the frameworks, but I also think it makes sense to involve the community as we move forward.

2 April, 2009
Rory Becker - DevExpress

I can't believe how much I missed in my own attempt to describe the new features... -> rorybecker.blogspot.com/.../coderush-and-refactor-910-beta.html

2 April, 2009
Unhandled Exceptions » Blog Archive » CodeRush + Refactor! Pro 2009.1 Update Just Released

Pingback from  Unhandled Exceptions  » Blog Archive   » CodeRush + Refactor! Pro 2009.1 Update Just Released

2 April, 2009

For fun, I quickly gathered some tweet-reviews of the first day of CodeRush 9.1: GaryLCoxJr : It's

2 April, 2009

Code Issue :

In my code, in several place in the class, I have this error "Redundant this qualifier", it's possible to remove this one by one. May be add an option to correct this error only the current error for all these errors in the current document. Just an idea

2 April, 2009

Awesome stuff, just got done testing some of the features in detail.  I don't have to hear any more BS from the RoR guys and their TextMate type tools any longer (except the argument that their tools are cheaper :-))

2 April, 2009

You're on the way to succeed in making CodeRush a must-have for every .NET development team. Soon, not having CodeRush will be like not having Visual Studio: senseless.

2 April, 2009
Sanjay Sharma

The HTML goodies should be useful to web designers if it supports Expression Blend too...

2 April, 2009

Thank you for submitting this cool story - Trackback from DotNetShoutout

3 April, 2009

Code Rush v9.1 (Visual Studio Plugin) veröffentlicht.

3 April, 2009
Lars Christiansen

When can we expect DevExpress controls templates to be included in CodeRush ??

4 April, 2009
Regan Campbell

Any thoughts of Delphi version? Loved CR when it was Delphi compatible....

5 April, 2009
Boris Bosnjak

Having worked with the new CR now for a few days, I have to stay the real godsend is the "What just happened?" popups, allowing me to disable an action if required.  

Over the past few months I've been slowly going crazy with undesired expansions and bracketing and stuff occurring when I'm just overwriting some code (I was never successful in finding where to disable the particular expansions/substitutions that were plaguing me).

With the new "What's Just Happened", it's soooo very easy to immediately suppress the automatic stuff I don't want, while permitting the "good" stuff to continue.

Whoever thought of this feature deserves a case of beer! :-)

5 April, 2009

Code smells -- cool!!!

10 April, 2009
The ASPx Blog - Mehul Harry's DevExpress Blog

Check out the new CodeRush features for web developers video which shows off some great additions in

24 April, 2009
Cheater Checker. | 7Wins.eu

Pingback from  Cheater Checker. | 7Wins.eu

7 February, 2010

Please login or register to post comments.