Mark Miller

April 2008 - Posts

  • 16 Tips for Getting Up to Speed & Exploiting the Power of CodeRush and Refactor! Pro

    #1: Dock the CodeRush training window (DevExpress | Tool Windows | CodeRush) next to the editor.  This training window displays context-sensitive keystrokes and code template shortcuts as you work, and is designed to help you learn much of CodeRush without diving into the User Guide.

    #2: Add frequently-used classes to the template type mnemonics by right-clicking any reference to that type in the code and choosing “Use Type in Templates…”, and then specifying a shortcut mnemonic to associate with that type.

    Once added, your new mnemonic will work with all the template “verbs” which are followed by an ellipsis in the CodeRush training window. Custom mnemonics can be edited on the Dynamic Lists options page:

    1. From the DevExpress menu, select "Options...".
    2. In the tree view on the left, navigate to this folder:


    3. Select the "Dynamic Lists" options page.
    4. Change the language combo to *Neutral*. Remember to change this back to your favorite language when editing the data on other options pages.
    5. Select the "Custom Types" dynamic list.

    #3: Access training videos through the DevExpress menu, or online here

    Watch this DNR TV session demonstrating CodeRush and Refactor! Pro.

    Read the User Guide. From the DevExpress menu select “User Guide”. Use the TreeList to drill into topics of interest.

    #6: Review the complete list of refactorings in Refactor! Pro. 

    #7: Navigate through all references to the identifier or type at the caret by pressing the Tab key (Shift+Tab navigates back, and/or Escape brings you to the place where you first pressed Tab).

    #8: Press Alt+Home to drop a stack-based marker. Press Escape to collect it. Stack-based markers are like bread crumbs and help you find your way back through important points in your code.

    #9: Widen the selection by logical blocks by pressing Num + on the numeric keypad, or Ctrl+W. Once a selection has been widened, you can reduce it using Num - on the numeric keypad, or Ctrl+Shift+W.

    #10: Wrap multi-line selections in try/catch blocks just by pressing the letter "c". Look to the training window for more wrapping shortcuts when the selection extends beyond two or more lines.

    #11: Create brace block pairs in C#, C++, and JavaScript with the b template (type the letter "b", then press the spacebar). Similarly, you can wrap a multi-line selection inside braces by pressing the letter "b".

    #12: Change the visibility of the member or type containing the caret by pressing the Alt+Up and Alt+Down keys.

    #13: Navigate between camel-case sections by pressing Alt+Left or Alt+Right. Combine that with the Shift key to select camel-case sections.

    #14Rebind the default Refactor key binding (Ctrl+` -- that's Ctrl plus the backtick) to something easier to hit. I prefer Num 0 on the numeric keypad. Scott Hanselman prefers simply the backtick. You can change this binding through DevExpress | Options, then navigate to the IDE\Shortcuts options page and open the Refactor! folder. While you're here, check out the alternate shortcut bindings that you can simply enable (like F2 for Rename).

    #15: Use the Refactor key for TDD-style development. Create your client calls first, then press the Refactor key to declare method stubs, classes, structs, interfaces, fields, locals, etc.

    #16: Confidently use CodeRush and Refactor! Pro with the latest language features of Visual Studio 2008, like LINQ expressions in C# and VB, lambda expressions in C#, and XML literals in VB. Yes, we do realize Visual Studio 2008 has been out for something like six months, and you would think that by now competing products would have final shipping support for C# 3.0 and VB 9. Unbelievably, that still isn't the case. Of course, CodeRush and Refactor! Pro have included full support for C# 3.0 and VB 9.0 (and many other languages) since the day Visual Studio 2008 shipped.

  • INETA User Group Tour Wrap-up

    Just got back from presenting the Science of Great UI at three INETA user groups (Victoria BC, Vancouver BC, and Milwaukee, WI). In Vancouver my machine (built by unsupervised monkey children in a garage at Alienware) refused to connect to the projector, and I ended up borrowing Richard Campbell's machine for the demo (thanks Richard for telling that great story while I transferred slides and demo files over to your machine).

    Good crowds in all three locations, with somewhere between 300 and 400 people showing up in Milwaukee (and about 20 minutes of inspired questions).

    This session will be presented at least two more times this year -- once at DevConnections in Orlando, and a second time at TechEd in Orlando. And Dev Express is likely to record and host a version of this session.

    For devs who cannot see the session in person, I just finished recording part one of a two part audio series on the Science of Good UI for Dot Net Rocks. I expect that to come out soon.

  • Science of Great UI - World Tour

    Will be presenting one of my favorite sessions, The Science of Great UI, at a number of upcoming events, including:

    This session presents great design priniciples to developers with an emphasis on simplicity and clarity, and bridges the gap between code and customer. Here's the official description for this session:

    Explore the how and why of great UI. If you believe you’re not an artist, that UI is merely subjective, or that a great UI is not worth the effort, then this session is for you. You’ll learn how to measure UI quality, covering user models, entry points, orienteering, and discoverability, with tips and code samples for the WPF and .NET developer sprinkled throughout. Regardless of whether you’re building WPF applications or the traditional Windows Forms or Web ones, you’ll learn how to reduce visual noise, lower barriers to entry, enhance clarity, and in general make your applications a pleasure to use. It’s all about making your customers happy and this session will show you how.


Chat is one of the many ways you can contact members of the DevExpress Team.
We are available Monday-Friday between 7:30am and 4:30pm Pacific Time.

If you need additional product information, write to us at or call us at +1 (818) 844-3383


DevExpress engineers feature-complete Presentation Controls, IDE Productivity Tools, Business Application Frameworks, and Reporting Systems for Visual Studio, Delphi, HTML5 or iOS & Android development. Whether using WPF, ASP.NET, WinForms, HTML5 or Windows 10, DevExpress tools help you build and deliver your best in the shortest time possible.

Copyright © 1998-2018 Developer Express Inc.
All trademarks or registered trademarks are property of their respective owners