Visual Studio IDE

Welcome to the Visual Studio UserVoice site. Let us know what you would like to see in future versions of the Visual Studio suite of products. This site is for suggestions and ideas. If you need to file a bug, you can visit our Developer Community website to get started. 

NOTE: The Applications Insights forum has moved to the Azure feedback site.

For suggestions for improvements to other developer products, see these sites:

To review the current UserVoice statuses and their definitions, please review our “What Does the Status of My Feedback Mean?” article.

We look forward to hearing from you!

- The Visual Studio Team
Terms of Service and Privacy Policy

I suggest you ...

You've used all your votes and won't be able to post a new idea, but you can still search and comment on existing ideas.

There are two ways to get more votes:

  • When an admin closes an idea you've voted on, you'll get your votes back from that idea.
  • You can remove your votes from an open idea you support.
  • To see ideas you have already voted on, select the "My feedback" filter and select "My open ideas".
(thinking…)

Enter your idea and we'll search to see if someone has already suggested it.

If a similar idea already exists, you can support and comment on it.

If it doesn't exist, you can post your idea so others can support it.

Enter your idea and we'll search to see if someone has already suggested it.

  • Hot ideas
  • Top ideas
  • New ideas
  • My feedback
  1. Make Visual Studio per-monitor/multi-monitor DPI aware

    http://msdn.microsoft.com/en-us/library/windows/desktop/dd464646
    http://imgur.com/qAiVw1Q,eVRIBlZ

    When dragging VS 2013.1 Express to my second monitor running at a different DPI, it becomes blurry. VS seems to be acting as if it only has support for global DPI settings instead of per-monitor settings. It would be great if VS followed the same guidelines its users are attempting to follow when it comes to developing desktop apps ;-).

    560 votes
    Vote
    Sign in
    Check!
    (thinking…)
    Reset
    or sign in with
    • facebook
    • google
      Password icon
      I agree to the terms of service
      Signed in as (Sign out)
      You have left! (?) (thinking…)
      27 comments  ·  IDE and Editor  ·  Flag idea as inappropriate…  ·  Admin →

      Hello voters!

      While I don’t have concrete plans to share yet, I do want to let you know that we recently started looking into this and what will it take for us to provide better support for this scenario.

      I’ll provide another update once I have more concrete information to share.

      Thank you!

      Ruben Rios
      Program Manager
      Visual Studio IDE Team

    • Stop automatically messing with my solution configurations and platforms

      Every single time I add a project to a solution, Visual Studio "helpfully" adds to the solution every configuration it finds in the project.

      Every single time the project has a platform that the solution doesn't, Visual Studio "helpfully" creates the missing solution platform and also, most annoyingly, "Mixed Platforms".

      PLEASE leave them alone. I set them up how I like and I'd like them to stay that way.

      Example use case #2:

      I create a new project (defaults to x86) and add a Util library (AnyCPU). Wham, I'm only 5 seconds into a new project and I already have…

      557 votes
      Vote
      Sign in
      Check!
      (thinking…)
      Reset
      or sign in with
      • facebook
      • google
        Password icon
        I agree to the terms of service
        Signed in as (Sign out)
        You have left! (?) (thinking…)
        9 comments  ·  Project  ·  Flag idea as inappropriate…  ·  Admin →
      • Microsoft can make an update of the VB6 to VB7 (Classic VB)

        1) It should be able to create VB Command Line application.
        2) API selection dialog which will put the selected API on the project.
        3) It should be able to create both 32-bit and 64-bit applications.
        4) It should also have a feature to create self dependent application which doesn't depend on any runtime library.
        5) Change the looks similar to the VS2013/VS2015.

        # If Microsoft does create this new COM based programming language I am sure many programmers will switch back to Microsoft.
        # And really there is not point in abandoning such a huge crowd of programmers who…

        543 votes
        Vote
        Sign in
        Check!
        (thinking…)
        Reset
        or sign in with
        • facebook
        • google
          Password icon
          I agree to the terms of service
          Signed in as (Sign out)
          You have left! (?) (thinking…)
          39 comments  ·  Languages - Visual Basic  ·  Flag idea as inappropriate…  ·  Admin →
        • Improve shared projects with global view

          Shared projects are very useful, not only for universal apps development but also to share code between different apps/platforms, for example : Xamarin projects, code sharing between windows 8.1 and windows 10 projects or between to similar apps (6tag and 6sec for example), etc...

          But we can perhaps improve it, with a new way to show all files from a project, including files from shared project. See my illustration

          540 votes
          Vote
          Sign in
          Check!
          (thinking…)
          Reset
          or sign in with
          • facebook
          • google
            Password icon
            I agree to the terms of service
            Signed in as (Sign out)
            You have left! (?) (thinking…)
            8 comments  ·  Project  ·  Flag idea as inappropriate…  ·  Admin →
          • Bring back incremental C# compilation

            When coding Java in Eclipse, the compiler incrementally compiles the project in the background every time a file is saved. This way, when the user clicks run, the launch is instantaneous, rather than the long build process that comes with C#. This makes it easier to develop and test small changes, which in turn makes it easier to find and fix bugs.

            The C# compiler originally had this functionality, but it was removed when .NET 2.0 arrived as it could sometimes cause problems. However, given that it been proved possible in an equivalent language by the Eclipse team, coupled with…

            534 votes
            Vote
            Sign in
            Check!
            (thinking…)
            Reset
            or sign in with
            • facebook
            • google
              Password icon
              I agree to the terms of service
              Signed in as (Sign out)
              You have left! (?) (thinking…)
              10 comments  ·  Languages - C#  ·  Flag idea as inappropriate…  ·  Admin →
            • bring back Build Explorer in Visual Studio 2015

              Build Explorer had been removed in Visual Studio 2015 in favour of a browser based solution.
              Unfortunately not all function of Visual Stduio Build Explorer are available in TFS Web Access.
              Currently it is really frustrating when you need to look at code coverage in source files and not only at the percentage.
              the information is stored in TFS and you can still use it with Visual Studio 2010 - 2013 but needing to use two Visual Studio does not allow to switch completely to Visual Studio 2015.

              531 votes
              Vote
              Sign in
              Check!
              (thinking…)
              Reset
              or sign in with
              • facebook
              • google
                Password icon
                I agree to the terms of service
                Signed in as (Sign out)
                You have left! (?) (thinking…)
                22 comments  ·  Version Control (Git/TFVC)  ·  Flag idea as inappropriate…  ·  Admin →
              • Feature Request: Local Fields within Properties

                A simple property in C#:
                int MyProperty
                {
                get
                {
                return _myProperty;
                }
                set
                {
                _myProperty = value;
                }
                }
                private int _myProperty = 42;

                Now, imagine the requirement appears that the code must be documented using the /// conventions.

                /// <summary>MyProperty is wonderful...</summary>
                int MyProperty
                {
                get
                {
                return _myProperty;
                }
                set
                {
                _myProperty = value;
                }
                }
                /// <summary>I don't want to document this but I'll get a diagnostic if I don't.</summary>
                private int _myProperty = 42;

                It's too bad that
                /// <summary>MyProperty is wonderful...</summary>
                int MyProperty
                {
                int _myProperty = 42;
                get
                {
                return _myProperty;
                }
                set …

                527 votes
                Vote
                Sign in
                Check!
                (thinking…)
                Reset
                or sign in with
                • facebook
                • google
                  Password icon
                  I agree to the terms of service
                  Signed in as (Sign out)
                  You have left! (?) (thinking…)
                  11 comments  ·  .NET  ·  Flag idea as inappropriate…  ·  Admin →
                • Microsoft VB6 programming - reopen this suggestion and update VB6

                  The suggestion to bring back and update the classic VB6 programming language is the most popular in Visual Studio UserVoice with over 5200 comments.

                  Please now re-open this suggestion
                  https://visualstudio.uservoice.com/forums/121579-visual-studio-2015/suggestions/3440221-bring-back-classic-visual-basic-an-improved-versi
                  and allow posters to vote as well as comment.

                  VB6 programming isn't going to go away just because Microsoft declines a suggestion on UserVoice. Allow voting to see the strength of demand for this suggestion.

                  Then bring back VB6, update it to include the changes made in the VBA programming language (v7.x) and extend it to allow "compiling" to JavaScript.

                  https://visualstudio.uservoice.com/forums/121579-visual-studio-2015/suggestions/3440221-bring-back-classic-visual-basic-an-improved-versi

                  522 votes
                  Vote
                  Sign in
                  Check!
                  (thinking…)
                  Reset
                  or sign in with
                  • facebook
                  • google
                    Password icon
                    I agree to the terms of service
                    Signed in as (Sign out)
                    You have left! (?) (thinking…)
                    29 comments  ·  Languages - Visual Basic  ·  Flag idea as inappropriate…  ·  Admin →
                  • 517 votes
                    Vote
                    Sign in
                    Check!
                    (thinking…)
                    Reset
                    or sign in with
                    • facebook
                    • google
                      Password icon
                      I agree to the terms of service
                      Signed in as (Sign out)
                      You have left! (?) (thinking…)
                      17 comments  ·  Version Control (Git/TFVC)  ·  Flag idea as inappropriate…  ·  Admin →

                      We are excited to let you know that we are working on this suggestion. We are pursuing a design that will allow you to set pull —rebase at the global and repo level; the setting will be saved directly to your gitconfig. We will consider rebase on a pull-by-pull basis (as requested in some comments) for future development.

                      Sync runs pull immediately followed by push, so configuring this setting will allow Sync to do a pull —rebase.

                      In the event that you are using Visual Studio 2017, you can set up pull —rebase in your gitconfig and VS will already respect those settings.

                      Kayla Ngan
                      Program Manager

                    • GPGPU programming

                      It would be very beautiful if .Net supports GPGPU programming like http://en.wikipedia.org/wiki/GPGPU
                      especially that know graphic accelerators are in every where from PCs to Phones to Tablets..

                      503 votes
                      Vote
                      Sign in
                      Check!
                      (thinking…)
                      Reset
                      or sign in with
                      • facebook
                      • google
                        Password icon
                        I agree to the terms of service
                        Signed in as (Sign out)
                        You have left! (?) (thinking…)
                        5 comments  ·  .NET  ·  Flag idea as inappropriate…  ·  Admin →
                      • allow extension methods to be defined in instance classes

                        Currently, extension methods can only be defined in a static class. It would be very helpful if an extension method could also be defined in an instance class, so that this was possible:

                        public class Foo
                        {
                        public void DoBar()
                        {
                        new Qux().GetBaz("corge").DoGrault();
                        }

                        private static Baz GetBaz(this IQux qux, string s)
                        {
                        // Get Baz from qux here...
                        }
                        }

                        This simply enables a more fluent syntax for private helper methods. This can improve readability of the code compared to a more procedural-looking use of normal static helper methods.

                        The current workaround is to define a new internal static…

                        502 votes
                        Vote
                        Sign in
                        Check!
                        (thinking…)
                        Reset
                        or sign in with
                        • facebook
                        • google
                          Password icon
                          I agree to the terms of service
                          Signed in as (Sign out)
                          You have left! (?) (thinking…)
                          8 comments  ·  Languages - C#  ·  Flag idea as inappropriate…  ·  Admin →
                        • Improve project F# model

                          Improve F# project model (at least, add directions support). Maybe some extension to the language itself would be pretty good: #require "filename" to indicate that filename must be compiled before current file.

                          498 votes
                          Vote
                          Sign in
                          Check!
                          (thinking…)
                          Reset
                          or sign in with
                          • facebook
                          • google
                            Password icon
                            I agree to the terms of service
                            Signed in as (Sign out)
                            You have left! (?) (thinking…)
                            under review  ·  15 comments  ·  Languages - F# Tools  ·  Flag idea as inappropriate…  ·  Admin →
                          • Improve/Reboot Visual Studio Project System

                            Visual Studio Projects have been around for over a decade, and their projects are starting to show this fact. There are 3 primary issues with Visual Studio Projects that should be attended to in a (very-near) future release:

                            1) The .sln format. 2001 called and wants its arcane, VB.NET-esque format back -- and we should gladly oblige, PRONTO!!!
                            2) MSBuild XML format. The format is very difficult to work with, primarily because there is no tooling support for it. Additionally, the syntax is also arbitrary and suffers from XDom-to-POCO-mapping which is a terrible way to design any system around XML…

                            497 votes
                            Vote
                            Sign in
                            Check!
                            (thinking…)
                            Reset
                            or sign in with
                            • facebook
                            • google
                              Password icon
                              I agree to the terms of service
                              Signed in as (Sign out)
                              You have left! (?) (thinking…)
                              24 comments  ·  Project  ·  Flag idea as inappropriate…  ·  Admin →
                            • Visual studio - GIT - propose to prune when fetching the repo

                              What I'd like to do is that Fetch should be able to do 'git fetch --prune'

                              I know that I can register a remote to always be pruned with 'git config remote.origin.prune true' but this is not what I want.

                              I'd like a checkbox on the right of Fetch button for example.

                              see https://social.msdn.microsoft.com/Forums/vstudio/en-US/d283472d-a194-4f55-aee6-205094fb1766/visual-studio-git-always-prune-when-fetching-the-repo-?forum=tfsversioncontrol#87f6bf6b-0b58-46ee-9475-252e11910848

                              489 votes
                              Vote
                              Sign in
                              Check!
                              (thinking…)
                              Reset
                              or sign in with
                              • facebook
                              • google
                                Password icon
                                I agree to the terms of service
                                Signed in as (Sign out)
                                You have left! (?) (thinking…)
                                10 comments  ·  Version Control (Git/TFVC)  ·  Flag idea as inappropriate…  ·  Admin →

                                We are excited to let you know that we are working on this suggestion. We are pursuing a design that will allow you to set fetch —prune at the global and repo level. We will consider prune on a fetch-by-fetch basis (as requested in this suggestion) for future development.

                                In the event that you are using Visual Studio 2017, you can set up fetch —prune in your gitconfig and VS will respect those settings.

                                Kayla Ngan
                                Program Manager

                              • add support for Windows Store apps written in F# ... show that F# can be superior to C# even when it comes to more common tasks like GUI dev

                                add support for Windows Store apps written in F# (FSharp) ... to show that F# can be superior to C# even when it comes to more common tasks like GUI development.
                                <a href="https://github.com/dmitry-a-morozov/fsharp-wpf-mvc-series/wiki/Intro&quot; > link </a>

                                486 votes
                                Vote
                                Sign in
                                Check!
                                (thinking…)
                                Reset
                                or sign in with
                                • facebook
                                • google
                                  Password icon
                                  I agree to the terms of service
                                  Signed in as (Sign out)
                                  You have left! (?) (thinking…)
                                  under review  ·  11 comments  ·  Languages - F# Tools  ·  Flag idea as inappropriate…  ·  Admin →
                                • Basic Refactoring Functionality needed

                                  Right now when I want to make a section of code a method or make some simple refactoring, its not in the box. Rename is there, but its local to the page and doesn't go deep enough. The top 5-10 refactoring types should come in the box.

                                  Merged from another idea: Improve the refactoring tools like code generation, rename, etc.

                                  484 votes
                                  Vote
                                  Sign in
                                  Check!
                                  (thinking…)
                                  Reset
                                  or sign in with
                                  • facebook
                                  • google
                                    Password icon
                                    I agree to the terms of service
                                    Signed in as (Sign out)
                                    You have left! (?) (thinking…)
                                    16 comments  ·  Languages - C#  ·  Flag idea as inappropriate…  ·  Admin →
                                  • XML comments schema customization in C#

                                    Allow to customize the XML tags recommended for use in XML inline comments for documentation.

                                    Just as in VB, a CSharpXMLDoc.xml could be saved in AppData to pass C# editor the customized XML elements.

                                    479 votes
                                    Vote
                                    Sign in
                                    Check!
                                    (thinking…)
                                    Reset
                                    or sign in with
                                    • facebook
                                    • google
                                      Password icon
                                      I agree to the terms of service
                                      Signed in as (Sign out)
                                      You have left! (?) (thinking…)
                                      20 comments  ·  Languages - C#  ·  Flag idea as inappropriate…  ·  Admin →
                                    • Add support for link shared files in shared project

                                      Please add function to link a file file in a shared project like is actually possible in normal projects.
                                      This function is already supported with manual editing a .projitems file:

                                      myFile.cs

                                      478 votes
                                      Vote
                                      Sign in
                                      Check!
                                      (thinking…)
                                      Reset
                                      or sign in with
                                      • facebook
                                      • google
                                        Password icon
                                        I agree to the terms of service
                                        Signed in as (Sign out)
                                        You have left! (?) (thinking…)
                                        0 comments  ·  Project  ·  Flag idea as inappropriate…  ·  Admin →
                                      • Stop polluting My Documents with Visual Studio folders

                                        Visual Studio creates a new folder in My Documents with every version. Over time, if the user requires many different versions of Visual Studio installed, this pollutes the folder. My Documents is supposed to be where I keep, well, my documents.

                                        This even goes again Microsoft's own software design guidelines, if I remember them right.

                                        Most of the subfolders should be moved to the existing AppData Visual Studio folder. The Projects subfolder has no reason to exist, since you might as well default the My Documents folder when creating new projects (the user can obviouly change this at the time,…

                                        473 votes
                                        Vote
                                        Sign in
                                        Check!
                                        (thinking…)
                                        Reset
                                        or sign in with
                                        • facebook
                                        • google
                                          Password icon
                                          I agree to the terms of service
                                          Signed in as (Sign out)
                                          You have left! (?) (thinking…)
                                          35 comments  ·  IDE and Editor  ·  Flag idea as inappropriate…  ·  Admin →

                                          Hello,

                                          We’ve begun work on this and are considering changing the default location for new projects to C:\\USERPROFILE\Source\repos. Would this be a reasonable change to address the problem of “clutter” in the Documents folder? This is currently the default for cloned repositories, so all projects would be in a singular default location.

                                          As well, you still retain the option to change the default if you’d like.

                                          Allison Buchholtz-Au
                                          Program Manager – VS IDE

                                        • Allow precompiled headers to be shared between projects

                                          In Visual Studio 2008 and earlier, I believe you could (by an unsupported method) allow one project to generate a precompiled header which other projects could then use. But I understand this is not possible, or only works in limited ways in VS 2010 and later.

                                          Please add official support for allowing a precompiled header to be shared between projects.

                                          As a nice to have it would also be ideal if more than one precompiled header could be used by a project so that both a shared and project specific precompiled header could be used.

                                          See also:

                                          http://social.msdn.microsoft.com/Forums/vstudio/en-US/665d4183-f85c-481d-bada-03283b310099/shared-precompiled-header?forum=vclanguage

                                          http://stackoverflow.com/questions/14048212/can-i-share-a-precompiled-header-between-projects-to-reduce-compile-time

                                          457 votes
                                          Vote
                                          Sign in
                                          Check!
                                          (thinking…)
                                          Reset
                                          or sign in with
                                          • facebook
                                          • google
                                            Password icon
                                            I agree to the terms of service
                                            Signed in as (Sign out)
                                            You have left! (?) (thinking…)
                                            20 comments  ·  Languages - C++  ·  Flag idea as inappropriate…  ·  Admin →
                                          • Don't see your idea?

                                          Feedback and Knowledge Base