Visual Studio

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, visit the Visual Studio Connect site: https://connect.microsoft.com/visualstudio.

We would also like to invite you to check out the Announcements section we have added to this site, where we will be posting special opportunities for you to participate in.

We look forward to hearing from you!

The Visual Studio Team
Terms of Service and Privacy Policy

NEW! Announcing Limited Preview for Visual Studio Online Code Search

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 vote and comment on it.

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

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

  • Hot ideas
  • Top ideas
  • New ideas
  1. Add lambda support to C++/CLI

    Lambda is now supported in C++ 0x but not in C++/CLI. It means we are not able to use C++ lambda to define delegates in ref class. This makes using .Net libraries like Task<T> and System::Linq a very tedious work.

    36 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…)
      1 comment  ·  Languages - C++  ·  Flag idea as inappropriate…  ·  Admin →
    • VSO: Search by Pull Request number.

      I would like to search by Pull Request number. This will allow the reviewers to quickly get the appropriate pull request.

      22 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…)
      • hotkey suggestions for current actions

        Visual Studio has many hotkeys, but if you want to use it you have to learn all of this. No, if you see unobtrusive suggestion with current hotkey for action, which you have done now, you will remember it easily. Also, it will be useful if it shows only for often making actions. As I know, same functionality exists in Intellij IDEA.

        3 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  ·  IDE  ·  Flag idea as inappropriate…  ·  Admin →
        • Update WPF to use Direct2D for rendering instead of Direct3D 9

          WPF currently uses Direct3D 9 for rendering. This is because WPF was designed when it had to run on XP. Today, all platforms that WPF runs on have Direct2D support. Direct2D has vastly superior rendering performance compared to WPF's current Direct3d-based rendering.
          It would thus make excellent sense to migrate to using Direct2D for rendering. As rendering is pretty abstract in WPF, this could probably be done with little to no impact on compatibility, but with HUGE performance benefits. Watch some of the comparisons between Direct2D and WPF.

          34 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  ·  Windows Presentation Foundation  ·  Flag idea as inappropriate…  ·  Admin →
          • Improve SQL Server Management Studio Diagrams

            Improve SQL Server Management Studio Database Diagrams to use modern disign (aperance) like VS Class Diagrams or EF Diagrams.

            It is unaceptable on these days that SQL Server Managemnt Studio renders that ugly and old diagrams with those old fat lines and borders. We would love to see SQL Management Studio Generating beautiful diagrams like VS Class Diagram or EF Diagrams.

            Also allow "Fit to print" options like CA Erwin does.

            13 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  ·  Database Projects  ·  Flag idea as inappropriate…  ·  Admin →
            • Enable Smart Unit Tests to generate tests for VB.NET projects

              In VS2015 Preview, Smart Unit Tests does not support generating tests for VB.NET projects. Please extend this feature to enable generating tests for VB.NET projects.

              21 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  ·  Visual Studio Ultimate  ·  Flag idea as inappropriate…  ·  Admin →
              • Support rich debugging of F# scripts

                F# developers love the low-overhead, iterative REPL experience they have today, but when scripts become larger and more complex, they become difficult to debug. There is no interaction whatsoever today between Editor + F# Interactive and the VS Ddbugger. Thus to debug complex scripts, devs must resort to one of:

                - `printf` debugging
                - Create a console app, paste in script code, F5-debug the console app

                It would be much nicer if we could have the VS debugger participate in the F# script workflow directly.

                7 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  ·  Languages - F# Tools  ·  Flag idea as inappropriate…  ·  Admin →
                • try-catch "ignore" (or resume, ...) option for catch(ExceptionType) blocks

                  In catch block, support an option to ignore (i.e. resume code in the try block) for specific exceptions. This suggestion is not tied to any particular syntax. Here are two possibilities:

                  try
                  {
                  A();
                  B(); // B() will throw OurSystem.SpuriousException
                  C();
                  D();
                  }
                  catch (OurSystem.SpuriousException X)
                  {
                  if (X.SomeProperty == Error.WeDontCare)

                  ignore; // THIS IS MY SUGGESTION - would resume at "C();"

                  }
                  catch (System.Exception ex)
                  {
                  // process "ex" - this is a "real" exception
                  }

                  or:

                  try (ignore OurSystem.SpuriousException)
                  {
                  // this wouldn't allow any if/else logic, though
                  }

                  1 vote
                  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…)
                    2 comments  ·  Languages - C#  ·  Flag idea as inappropriate…  ·  Admin →
                  • Colorize output in output window

                    I'm using the VSColorOutput extension for this at the moment (see https://visualstudiogallery.msdn.microsoft.com/f4d9c2b5-d6d7-4543-a7a5-2d7ebabc2496); unfortunately, it is somewhat buggy. In any case, I think this is such a basic functionality that it should be built in. Once you get used to colorized output, you can't live with the "white wall of text" anymore of vanilla VS.

                    Features:
                    - Colorize build output, such that, for instance, errors are red and warnings are yellow.
                    - Colorize application output based on configurable keywords; for instance, rules like "when the output starts with [Error], print it in red".

                    6 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  ·  User Interface  ·  Flag idea as inappropriate…  ·  Admin →
                    • Data Breakpoints

                      So, Intel Visual Fortran, formerly Compaq Visual Fortran, is an add-in for Visual Studio, and it uses the C++ Debugger. Version 6 of CVF had some nice features that increase productivity TREMENDOUSLY, and that have disappeared as of Visual Studio 2010/2013. According to Intel, this is because the same limitation exists in Visual C++/Debugger. These are all related to data breakpoints. Please fix these things!

                      -First issue: How do we show variable names for data breakpoints, rather than memory addresses; that is, show it as, for example PPS, not 0x12345678. When we add many data breakpoints, it is very difficult…

                      3 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  ·  Debugger  ·  Flag idea as inappropriate…  ·  Admin →
                      • High Performance line graph control based on Dynamic Data Display

                        Support for a high performance line graph control based on (or similar to) the Microsoft Research Project Dynamic Data Display (http://dynamicdatadisplay.codeplex.com/). Dynamic Data DIsplay is great but work on this project appears to have stopped.

                        414 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…)
                          1 comment  ·  Windows Presentation Foundation  ·  Flag idea as inappropriate…  ·  Admin →
                        • Create a new project type for the front-end projects (SPAs)

                          SPA is becoming a new trend in web development, but Visual Studio doesn't yet support splitting web applications into two separate projects - one for the front-end (Angular, Ember, React etc.), and another one - backend code (ASP.NET Web API, SignalR etc.), yet allowing to build and run them as a single web application. The directory layout you are currently enforce to use is not suitable for SPA applications. That is one of the reasons why many web developers switch from ASP.NET development to GO and other technologies.

                          It would be nice if VIsual Studio would support a directory layout…

                          19 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…)
                            1 comment  ·  IDE  ·  Flag idea as inappropriate…  ·  Admin →
                          • Restartless extensions

                            Allow extensions to be installed and removed without restarting VS.

                            2 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…)
                              1 comment  ·  IDE  ·  Flag idea as inappropriate…  ·  Admin →
                            • Support pull requests from different repositories

                              So, our company is split. Product development and projects. Recently the product team wanted to deploy the new TFS git features to use a PR based workflow. We cannot.

                              Short version: Please allow pull requests from other repositories/forks.

                              This solves a number of issues:

                              - Right now write access would be needed to the target repo [2] [3]
                              - Right now there are no security limitations. "Can send a PR" means "can change our code"

                              So far, PRs are 'incomplete' as far as I can tell, so [1] is really merely half the support/part of the plumbing.

                              1: http://visualstudio.uservoice.com/forums/121579-visual-studio/suggestions/3891599-tfservice-git-pull-requests

                              2:…

                              2 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…)
                              • Enable Smart Unit Tests to generate tests for Database Projects

                                Please add support for database projects (SSDT) for smart unit tests. Creating tests in Database Unit Test projects is tedious enough. Having smart unit tests analyze the database code and generate unit tests would be an incredible boost and productivity and code quality.

                                4 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…)
                                  1 comment  ·  Visual Studio Test and Lab Management  ·  Flag idea as inappropriate…  ·  Admin →
                                • elpvjclub de Pedro Vazquez

                                  El Poblado Villa Juarez Club

                                  1 vote
                                  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…)
                                    1 comment  ·  Accessibility  ·  Flag idea as inappropriate…  ·  Admin →
                                  • Stop supporting node.js/task runner

                                    I don't understand why Microsoft is embracing nodejs for development tooling when the node team is clearly hostile towards supporting the windows environment. The insanity in their attitude is self evident.
                                    https://github.com/joyent/node/issues/6960#issuecomment-46704998

                                    Aside from the path length issues on Windows, a "reasonable" gulp build pipeline uses 800+ MB of space on my drive for a single project not including the npm cache (see package.json below). Now multiply that across a few projects. Lots of module dependencies are duplicated and the files in those modules are small leading to lots of incomplete drive blocks. Then there's the fact that the duplicate…

                                    1 vote
                                    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…)
                                      1 comment  ·  IDE  ·  Flag idea as inappropriate…  ·  Admin →
                                    • Pixel Ruler when building WindowsForms

                                      I think it would be a convenient option to view a ruler when designing forms. Of course it wouldn't be a standard inch ruler but a pixel ruler since control properties like location and size are done in pixels. It's not necessary, but it could add convenience for people looking to know the size and location of controls already placed on a form without having to look at the properties of a control.

                                      1 vote
                                      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…)
                                        1 comment  ·  Windows Forms  ·  Flag idea as inappropriate…  ·  Admin →
                                      • Support Object Initializers on ExpandoObjects

                                        The following really seems like a feature that should work, but it gives a compiler error:

                                        dynamic expando = new ExpandoObject {
                                        FirstName = "David",
                                        LastName = "Lee"
                                        };

                                        It makes sense for Object Initializers to work on all types that implement IDynamicMetaObjectProvider. This inline initialization is especially useful when you want to pass the object inline as a parameter.

                                        For example:

                                        RegisterOptions(
                                        first: new ExpandoObject { FirstName = "A", LastName = "B" },
                                        second: new ExpandoObject { FirstName = "C", LastName = "D" },
                                        third: new ExpandoObject { FirstName = "E", LastName = "F" }
                                        };

                                        Instead of:

                                        dynamic…

                                        5 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  ·  Languages - C#  ·  Flag idea as inappropriate…  ·  Admin →
                                        • Interpreter for .NET languages

                                          It is good to add a C++(and other languages') interpreter for rapid development. An interpreter is very convenient and saves quite some time. The most important use of the interpreter is conceptual scripting. Users may transform basic concepts into scripts through line-editing, using an interactive command-line interpreter, before improving their idea into real and complete programs. It is also useful for new learners to use interactive interpreters for learning languages, in this way they can test and figure out if something works correctly, because interpreters can produce immediate results in an interactive session. Moreover, it helps programmers who uses interpreted…

                                          1 vote
                                          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…)
                                            1 comment  ·  Debugger  ·  Flag idea as inappropriate…  ·  Admin →
                                          • Don't see your idea?

                                          Feedback and Knowledge Base