Visual Studio 2013 New Features of the IDE

Update: I posted this article on Aug 10, 2013 on CodeProject and in this blog around the release of Visual Studio 2013 preview version(all the below mentioned features are still present in the final release). Even though I wrote this post for documenting and sharing the visual studio 2013 new features that I identified when I started exploring Visual Studio 2013, I recently noted many people, even Microsoft folks have talked about the new features in various Microsoft sites, I recommend everyone to check them out too (posting all those links will just make people lazy :-)).

Visual Studio 2013 Preview has been launched recently. Like I did with Visual Studio 2010 and Visual Studio 2012, I am writing this with several purposes in mind; I thought of documenting these cool new features of Visual Studio 2013 that I found, so that it will serve as an index for me and I could easily refer to this in talks I may give, or, when sharing these with friends.

(Note that one of the ultimate purposes of blogging/posting articles for me is that I can easily recall stuff when needed if I forget, that’s the reason even many guys who are greater than me blog :) it is kind of documenting your learning/taking notes, consolidating and keeping it in one page as a gist, and it may turn out to be useful to others. And, this will help people who are not privileged enough to install and checkout Visual Studio 2013 preview due to some reasons, like, if they don’t have a computer on their own or their organization doesn’t allow installing any software on their office machines by themselves(this sadly happens in India, the system is not smart enough to allow safe software to be installed without going through cumbersome authorization processes, you can’t even play ASP.NET site’s tutorial videos in some places :-).

Let me know if this was helpful for you, it will make me to post more such things here.

Note: This post talks about the Visual Studio 2013’s IDE new features. All non-IDE features, new language features, .NET Framework 4.5.1 features and specific code editor enhancements may be discussed in future articles.

Below are the list of Visual Studio 2013’s new features I found in the preview bits.

Roaming Settings

You will not miss noting this feature, because as soon as you launch Visual Studio 2013 for the first time you will get the below dialog prompting you to sign-in.

Screen_155 Jul. 08 15.00.26

You can sign-in to Visual Studio 2013 using your Microsoft account(hotmail.com,live.com,etc.). After you sign-in to Visual Studio 2013 your settings are sync’d with your Microsoft account. Next time when you use Visual Studio 2013 on another computer, you can use the same Microsoft account to sign-in and find your settings applied to it. This is pretty awesome if you have couple of computers, like, one at home and one in the office and if you use Visual Studio in it, I find this useful as I have faced problems in font and keyboard shortcuts settings that people(colleagues) have set differently. Now you don’t need to waste time to repeatedly configure these settings each time you use Visual Studio on a new machine(or in your colleague’s machine).

CodeMap – Visual Debugging

In Visual Studio 2013, when you are in a debugging session you will find an option called Code Map in the debug toolbar.

CodeMap1

When you are in Debug mode, clicking this will open a window which shows the visual representation of the execution flow as shown below.

Visual Studio 2013 New Features - CodeMap2

You can call this window as a Visual Call Stack, which shows the sequence of methods that are invoked. People who have spent hours on debugging will realize the potential of this tool, it will help you visualize the code structure better and will speed up your debugging pace. This also helps newcomers to dev teams to grasp existing code easily if they execute and turn this thing on.

You can add comments as shown below.

Visual Studio 2013 New Features - CodeMap3

You can group items as shown below.

Visual Studio 2013 New Features - CodeMap4

There are a bunch of other things that you can do with the CodeMap window, like, highlight the references to a method box, change colors of the method boxes, change the layout from top-down to left to right, etc.

Peek Definition – Alt+F12

In Visual Studio 2013, you have something called Peek Definition above the Go To Definition command.

ScreenHunter_88 Jul. 20 17.13

Unlike the Go To Definition command, which shows the definition by opening the actual code file where the definition is present as a new tab(or in preview tab); the Peek Definition shows the definition by displaying an inline frame containing the section of the actual source code file containing the definition as shown below.

(click to enlarge image)

ScreenHunter_90 Jul. 20 18.45

This allows the user to get a quick glimpse of the definition without leaving the current code location.

You can also use Peek Definition command again inside the peek definition frame which opens the definition in the same frame but displays a dotted breadcrumb band at the top right of the peek frame as shown below. This frame allows you to navigate back and forth the open definitions(source files). You can use Ctrl+Alt+- and Ctrl+Alt+= to navigate back and forth respectively.

(click to enlarge image)

Visual Studio 2013 New Features-PeekDefinition0

Code Lens

You wont miss noting this feature when using Visual Studio 2013. There will be indicators sitting atop of every method in the code editor. Clicking them will show information about the code section as shown below.

Visual Studio 2013 New Features - CodeLens

Here you can see that a method’s references are shown and seems this info indication doesn’t stop with just references, it has a bunch of things it could show, I found these capabilities of this feature by digging into Visual Studio Options. It looks like it will show Unit test related stuff, Authors, changes made by them, etc. You can find the options at Text Editor>All Languages>Code Information Indicators. I haven’t tried to make it show all the information that it could show, in future I may post more about it.

Browser Link

In Visual Studio 2013, you will find an icon near the Start command as shown below.

ScreenHunter_260 Aug. 09 11.21

This icon is the door to the new feature in Visual Studio 2013 called Browser Link, this provides you a two way link between Visual Studio and your browsers. As a basic functionality it allows you to refresh the browser window that runs your web application from within Visual Studio. As of now Browser Link just refreshes the browser window and I couldn’t find any other use of it apart from this, but I hope more cool features will be added to it in the full release of Visual Studio 2013. To try this just launch your web application and after it gets displayed in your browser, do some modifications to your web app in Visual Studio and click the above shown Browser Link icon, you will find your browser updated with the changes you made in Visual Studio, shortcut Ctrl+Alt+Enter.

You might remember that I wrote here about launching your ASP.NET web applications on multiple browsers at the same time from Visual Studio, now you can interact with all of them in Visual studio 2013 with this Browser Link feature. Browser Link is going to be a great feature and it could include a great bunch of options in it later.

New Blue Theme

Due to the popularity of white on black color schemes, in Visual Studio 2012 a dark theme was introduced. For those who preferred the classic black on white theme a Light theme was also present. In Visual Studio 2013, a new IDE color theme named as Blue is introduced(this is also available with Visual Studio 2012 Update 2).

ScreenHunter_91 Jul. 21 15.34

 

Visual Studio 2013 Light Theme

Visual Studio 2013 Blue Theme

ScreenHunter_90 Jul. 21 15.27  ScreenHunter_91 Jul. 21 15.27

(click to enlarge image)

UI Icons

There have been some debates on the decision of making all the icons in Visual Studio 2012 single colored(Light theme - black on white OR Dark theme - white on black ) some liked the simplicity and some hated to lose the familiarity towards the icons they have been using for years in past versions of Visual Studio. You will immediately note that Visual Studio 2013 has become more colorful. Some of the single colored icons are replaced with colored icons as shown below, click to enlarge the below images.

Visual Studio 2012 - Dark Theme

Visual Studio 2013 – Dark Theme

Visual Studio 2012 - Dark Theme Icon Colors  Visual Studio 2013 New Features - Dark Theme Icon Colors

(click to enlarge image)

Visual Studio 2012 – Light Theme

Visual Studio 2013 – Light Theme

Visual Studio 2012 - Light Theme Icon Colors  Visual Studio 2013 New Features - Light Theme Icon Colors

(click to enlarge image)

I personally like this version of icons than Visual Studio 2012’s, but I too kind of miss the old icons which were there till Visual Studio 2010, mostly the Debugging section’s code stepping icons. When I first started using Visual Studio 2012, I felt I have to put at least some tiny effort to get used to these icons, but I am a shortcut guy so majorly these icon changes don’t affect me much :).

Feedback & Notifications

In Visual Studio 2013, you will be able to easily give feedback about the product to Microsoft using the icon shown below.

ScreenHunter_260 Aug. 09 23.401

Notifications about product updates, etc. are shown in the small area beside this feedback icon. Clicking this flag like icon will open the notifications in a separate pane showing you the list of notifications as shown below.

ScreenHunter_260 Aug. 10 00.21

 

Conclusion

I am sure I would have missed some of the new features of Visual Studio 2013. Let me know in the comments if so. I will include them(of course crediting you :)

Happy Coding !

Bookmark / Share

Build 2013 - live streaming now.. Windows 8.1 revealed.. Visual Studio 2013 preview & .Net framework 4.5.1 preview released !

Build – a Microsoft’s developer conference occurs every year to inform developers around the world about the technologies & tools available for developers in Windows platform..

This year’s event is from Jun 26 to Jun 28
http://channel9.msdn.com/ -live stream

http://channel9.msdn.com/Events/Build/2013 event schedule..

http://www.buildwindows.com/announcement

http://www.microsoft.com/visualstudio/eng/2013-downloads - Visual Studio 2013 preview

Share the info with your friends..
Alchemists turned into chemists when they stopped keeping secrets.
-    Eric Raymond
Happiness quite unshared can scarcely be called happiness; it has no taste.
-    Charlotte Brontë

Bookmark / Share

Launching your ASP.NET web applications on multiple browsers at the same time from Visual Studio(2012)

Visual Studio 2010 offered option to view a particular .aspx page on multiple browsers when you right-click the file and chose Browse With… but it didn’t provide storing the setting and allowing to launch the web page on multiple browsers at the same time when you execute every time.

In this article we will see how this feature is enhanced in Visual Studio 2012; you can set multiple browsers as default and store this setting permanently and when you Debug(F5) you will get a dialog to choose the browser you’d like to debug with or when you Execute without debugging (Ctrl+F5) you will be able to launch the web application in multiple browsers.

As you may have noted from my earlier article about Visual Studio 2012 new features, Visual Studio 2012 has a browser drop down that lets you select the browser that will be used to launch your ASP.NET web application when you debug it (F5) as shown below, as I mentioned in my article, this was achievable in earlier Visual Studio versions via other not-so-quick menu/context menu commands.

Visual-Studio-2012-Browser-Drop-Down

 

If you click the Browse With… menu option shown above, you will be presented with the below dialog.

Visual-Studio-2012-Browse-With-Dialog

This window shows all the names of the browsers installed in your machine. As indicated by the dialog, you can select more than one browser and click Browse to launch the web application in the chosen browsers, this will not launch your web application in Debug mode.

Also, you can select multiple browsers and click Set as Default to make this setting permanent, so that whenever you execute the web application without debugging(Ctrl+F5) it will be launched in these browsers at the same time. The Execute command in Visual Studio 2012 will be captioned as Multiple Browsers instead of the default browser name.

Visual-Studio-2012-MultipleBrowsers-ExecuteButton

 

If you click the Execute command(which will execute your web application in debug mode) you will get the below prompt.

Visual-Studio-2012-DebugMode-ChooseBrowser

You can choose which browser you wish to use for debugging.

I think this particular feature will be a productivity enhancer for web developers who work on achieving browser compatibility and tackle issues arising when providing multiple browser support for their ASP.NET Web Applications.

 

Happy Coding !

isin
Bookmark / Share

Visual Studio 2012 New Features of the IDE - better late than never ;-)

I am making this post thinking “Better late than never”, as I was supposed to make this post a long time ago, actually in the beta period of Visual Studio 2012, like I did with Visual Studio 2010, unfortunately I was held up with other stuff, personal and work related. This post remained as partially completed in my blog’s drafts for a long time which I took and finished.

Note: This post talks about the Visual Studio 2012’s IDE new features. All non-IDE features, new language features, .net framework 4.5 features, new type of app development support like Windows 8 metro app development and specific code editor enhancements will be discussed in future posts.

So with that in mind, here are the new features of Visual Studio 2012’s IDE..

Dark Color Theme for code editor and IDE windows

Visual Studio 2012 provides out of the box option to have a White on Black color scheme, Dark AKA White on Black color schemes have become choice of many developers as many have realized that they are easy on the eyes.

VisualStudio2012-DarkTheme-OptionsDialog

Dark Theme (click to enlarge)

Visual Studio 2012 DarkTheme

 

Light Theme (click to enlarge)

Visual Studio 2012 LightTheme

 

Quick Launch – search the Visual Studio commands/menu options you need and locate it quickly

Seems Visual Studio has more than a whopping 4000 commands, apart from the frequently used commands, it wouldn’t be practical to remember most of the commands, hence Visual Studio 2012 has a cool feature called Quick Launch - Ctrl+Q located in the top right corner in the Visual Studio 2012 IDE as shown below.

Visual Studio 2012-QuickLaunch

You can start typing few letters of the command you are looking for and Quick Launch will provide auto-suggest with commands that starts with the letters you have typed.

Visual Studio 2012-QuickLaunch2

It also shows the shortcut keys for each command which is pretty neat.

Visual Studio 2012-QuickLaunch1

You can also use the Quick Launch command-category shortcut keywords as listed below to narrow down the command search, ex: “@opt project”.

Visual Studio 2012-QuickLaunch Shortcuts

 

Pin Tabs(files) that you use often to the left side of the Tab-well

This is a feature found in Productivity Power Tools for Visual Studio 2010 this allows you to pin tabs that you want to remain open and easily accessible. When you pin a tab it is stuck to the left most corner of the tab-well.

VisualStudio2012-PinTab

 

Search option in IDE windows

Many of the windows in Visual Studio 2012 will have a search option including Solution Explorer and Toolbox.

VisualStudio2012-Search-in-Windows

 

Find and Replace window changes

A minimalistic approach has been taken in designing the new find window present in Visual Studio 2012. The advantage is that the find window will not hide the code window much. Some may miss the old find window which shows shortcuts to turn on/off options like Match Case, Match whole word, etc. This resembles the search option found in modern browsers.

Visual-Studio-2012-Find

Visual-Studio-2012-Find1

 

Preview Tab

Visual Studio 2012 provides you a preview of a file when you select it in the Solution Explorer. Earlier if you want to examine the file contents of a file, you have to open it and see, if you are trying to locate something (and if you can’t use find command for some reason) then you would have opened a lot of files messing up the workspace with lot of open tabs. Now with this preview tab, when you select a file it is opened and placed in the right corner of the tab-well as shown below and when you select another file the currently selected file’s content is shown in the same preview tab.

If you want to keep the file open in a normal tab instead of showing in the preview tab then you can click the Keep Open icon as shown below.

Visual Studio 2012-Preview Tab

This preview tab feature also gives you another behavior which helps you to keep the IDE clean with only the files you like to keep open. Whenever you are debugging and stepping into your code Visual Studio will open other files when there is a chunk of code that is called by your main program file, and if there are lot of files involved then all of them are opened in the end of your debugging (stepping through) session. Now in Visual Studio 2012, the preview tab is utilized when you step through the code for which another file has to be loaded, once the other file’s statements are completed then the preview tab is automatically closed.

Browser Drop Down

The browser drop down shown below provides a quick way to start your ASP.NET web application on any of the browsers installed on your machine, earlier you’d have to do this via other not-so-quick menu/context menu commands.

Visual Studio 2012-Multi browser Drop Down

 

Create Multiple Solution Explorer Instances

Nowadays, in most solutions you work on, the number of projects present are many, but you work only with few of them depending upon the role you play in the project. Visual Studio 2012 gives you a new feature of creating Solution explorer instances showing only a project or folder containing a set of files when you right click them as shown below.

Visual Studio 2012-Multiple Solution Explorer Windows

Visual Studio 2012-Multiple Solution Explorer Windows-Product Folder

 

Page Inspector

Page inspector is another new feature in Visual Studio 2012, it allows you to examine the html/css of a web page similar to IE Developer Tool Bar or Firefox’s Firebug add-on.

You can inspect a HTML element’s HTML and CSS, make edits and try out how it will look in the browser on the fly.

(click to enlarge)

Visual Studio 2012-Page Inspector

 

IIS Express replaces the ASP.NET Development server

In Visual Studio 2012, IIS Express replaces the ASP.NET Development server, more about IIS Express here.

 

HTML5 & CSS3 support

The Visual Studio 2012 editor supports development of HTML 5 and CSS 3 web sites by providing appropriate intellisense and code snippets, will write a future article about this.

 

Unmodified Visual Studio 2010 project files

Visual Studio 2010(SP1) project files are not converted when opened in Visual Studio 2012. So if some of your team members use Visual Studio 2010 and you use Visual Studio 2012 for some reason, then you all can share the same solution/project file without converting to Visual Studio 2012’s project file format.

 

Single compact toolbar for common commands

In Visual Studio 2012, a single compact toolbar provides you with enough commands that you frequently use. This provides more screen real estate to show the code editor.

Visual Studio 2010’s toolbar:

Visual Studio-OldToolbarSection

Visual Studio 2012’s new compact toolbar:

Visual Studio 2012-Single Toolbar

 

Code Editor Enhancements

With every release of Visual Studio the code editor is a primary component which will have lot of new features added to it; which will help the developers improve their productivity. Likewise, in Visual Studio 2012 there are good number of new features added to it.

I will post a future article covering significant new features of Visual Studio 2012’s code editor, but I couldn’t resist talking about one exciting new feature that’s available when you edit CSS files in Visual Studio 2012. As shown below you get a color picker when you enter a CSS style element which requires a HTML color code as its value.

Visual Studio 2012-CSS Editor-Color Picker

 

Conclusion

I have listed some of the significant Visual Studio 2012 New Features of IDE, let me know if I missed anything in the comments.

 

Happy Coding !

Bookmark / Share

Want the dark font color scheme in Visual Studio 2010/2008 ?

If you like the dark color scheme available in Visual Studio 2012 and would be happy to have the same in your Visual Studio 2010/2008, you can have it for at least the code editor font colors by downloading the themes from studiostyl.es. (Note that white-on-black (dark color scheme) is easy on your eyes than usual black-on-white)

I was wondering if anyone could have made a theme based on Visual Studio 2012 and went to studiostyl.es and searched then got couple of dark themes based on Visual Studio 2012 code editor font colors.

One seems to be made using Visual Studio 11(2012) beta, you can get it here. I think this one looks more accurate.

Visual Studio 2011 beta dark color scheme

..and the other one made using Visual Studio 2012 you can get it here.

Visual Studio 2012 dark color scheme

Bookmark / Share

Visual Studio Wallpapers to decorate your desktop!

I was doing a search for visual studio logo to use in a presentation and I stumbled upon a site called vs2010wallpapers.com, and found some great wallpapers built by the community and thought of sharing with you. You too can create some and submit...

 

(Click to go to the site)

VisualStudio-Twitter-04tumblr_l32hxxj6CD1qbkusho1_1280tumblr_l20fp09DSz1qbkusho1_1280tumblr_l1ywxhsS5b1qbkusho1_1280tumblr_l1z4o9E03R1qbkusho1_1280VisualStudio-Twitter-04

Find more on the website..

Bookmark / Share

A little less cared ASP.NET’s NestedMasterPage

I have seen developers using user controls which will show and hide sections of site content based on the state of the web site. This is fine for some extent, you know when it becomes bad ? It becomes bad when only user controls are used even for site layout related stuff.

ASP.NET’s NestedMasterPage is a great thing, that, I should admit, I myself started using only recently earlier I was using other ways to display a set of pages in different layout in a website. NestedMasterPage is a master page which is based on another master page, you can have as many levels of nesting as you wish, as far as you don’t confuse yourself.

You create a NestedMasterPage based on which other normal ASP.NET pages will be created. You can have a Main master page in which a website’s most common UI elements are present and create NestedMasterPages for different areas of a site like subsections of a site like web interface for post Member login, etc.

Below is a simple depiction of what could be done with a NestedMasterPage in ASP.NET web forms.

12

Now, below images will give you some idea on how the layout of a site can be less messy if we use NestedMasterPages.

(click to enlarge)

ProdCat

(click to enlarge)

Checkout

Hope it’s understandable.

Bookmark / Share

Code Snippets in Visual Studio

This post gives introduces code snippets in Visual Studio, how you can use them and helps you find out the list of built-in code snippets for each language easily. Code snippets in Visual Studio are useful in reducing typing effort required to input code. Code Snippets help in several ways to simplify your work if you can remember to use them instead of typing the actual code. Code Snippets are present in Visual Studio from ver 2005.

To use code snippets, instead of typing the code you will type a shortcut, which actually is a word and press Tab key to insert the actual code to which the shortcut is linked with.

For example, to enter the below code..

for (int i = 0; i < length; i++)
{

}

You can type "for" and then press Tab, you will then get the code inserted into the code window as shown below..

2

3

Now you can see that “i” is highlighted, this means you can type a name for the loop variable, once you renamed it, you can press Tab to select “length” and rename it or specify what should be there, like, list.Count, etc. Once done, press enter to place the cursor inside the for loop braces.

As you can see, whenever you need to write a for loop you can just use this code snippet and save time, there are many code snippets like this which you can use.

Also, you can right click in the code editor and select Insert Snippet...(Ctrl+K, X) and choose the snippet you need from the list. You can also select lines of code and right click and select Surround With...(Ctrl+K, S) option to put the selected code into the snippet that you will insert, like, inside a try..catch block.

Code snippets are actually customizable as like most Visual Studio features. A code snippet is loaded from a “.snippet” file and the below image shows the location of the built-in C# code snippets. You can find snippets for VB & other languages in the language specific folder.

image

(C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC#\Snippets\1033\Visual C#)

I will write a future post on how to create your own code snippet for frequently entered common code patterns in your project and how to distribute them within your team so that everyone can use them.

Bookmark / Share