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. C# Switch-Case for Globa-Variables

    public class Pixel
    {
    public <T> R{ get; private set; }
    public <T> G{ get; private set; }
    public <T> B{ get; private set; }
    public <T> A{ get; private set; }
    ...
    public (double H, double S, double V) GetHSVColor()
    {
    <T>[] colorarray = new <T>[] { R, G, B };

    <T> max = colorarray.Max();
    <T> min = colorarray.Min();

    switch (max) {
    case R: //do Somethink1
    case G: //do Somethink2
    case B: //do Somethink3
    }
    //if(max == R)
    // //do Somethink1
    //else if(max == G)
    // //do Somethink2
    //else
    // //do Somethink3
    }
    }

    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  ·  Languages - C#  ·  Flag idea as inappropriate…  ·  Admin →
    • Update CMake integration to support CMake 3.8 to get C# support

      Great to hear CMake integration now supports CMake 3.7.2 in Visual Studio 15.2. Sadly, C# support wasn't added until CMake 3.8. You're so close, just an incremental update and you'll get C# project support!

      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…)
        0 comments  ·  IDE and Editor  ·  Flag idea as inappropriate…  ·  Admin →
      • 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 and Editor  ·  Flag idea as inappropriate…  ·  Admin →
        • Show percentage complete uploading files to TFS

          When uploading large files to TFVC it would be great to be able to see the percent complete of the individual files as there is no way to tell how the progress is going

          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  ·  Version Control (Git/TFVC)  ·  Flag idea as inappropriate…  ·  Admin →
          • set `%VS150COMNTOOLS%`

            Why don't you just set `%VS150COMNTOOLS%` (for the multiple instance use-case you could set is to a `;` delimited list, like `%Path%`) so we could just find `VsDevCmd.bat`, you could even drop `vswhere` in there, and all would be solved happily.

            ENV access is something all platforms have (COM isn't), and like I said before the installer is an Electron app, so I think it's you responsibility to assist us in getting Electron to easily compile on VS2017

            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…)
              2 comments  ·  Install  ·  Flag idea as inappropriate…  ·  Admin →
            • Show currently installed version in Manage Bower Packages

              When using the "Manage Bower Packages" for a project it shows if a package is up-to-date or if there is a newer version. The current version in your project is not shown, you will have to look inside bower.json to find the current version.
              Please add the current version to "Manager Bower Packages", just like it is in "Manage NuGet Packages"

              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…)
                0 comments  ·  Project  ·  Flag idea as inappropriate…  ·  Admin →
              • Autocomplete for custom resources for xaml

                It's good that autocomplete work with custom resources, like custom theme resources which we put in another file and like them to app.xaml. Or even autocomplete for key names of resource dictionaries.

                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…)
                  0 comments  ·  UWP / WPF / XAML Tools  ·  Flag idea as inappropriate…  ·  Admin →
                • For Data Driven MS test, file attached to test context in one data row execution , should not be attached again for subsequent data rows

                  If a file is to be attached to test results API [this.TestContext.AddResultFile()] is used. For data driven test on using this API, for test execution of each row, the files of previous rows are reattached. i.e if file1 is added for row1 and file2 is added for row2, the test result would contain 3 files . 2 copies of file1 and I copy of file 2. So for a data source of N rows, there will be n+ (n-1) + (n-2) + ......+1 files attached.

                  This is not required. It would be good if for every row only files added…

                  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…)
                    0 comments  ·  Test Tools  ·  Flag idea as inappropriate…  ·  Admin →
                  • 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…)
                      0 comments  ·  IDE and Editor  ·  Flag idea as inappropriate…  ·  Admin →
                    • Visual Studio offers a great way to edit source code through IntelliSense. It would be great through to have something like "Scripts/Automa

                      Visual Studio offers a great way to edit source code through IntelliSense. It would be great through to have something like "Scripts/Automation". I imagine something like putting a button in your source code editor that counts up the version number when clicked, or in general: modifies the source code in a certain way. I cannot only imagine this for buttons, but also other controls like CheckBoxes (e.g. to comment and uncomment code), RadioButtons (e.g. to switch out small parts of the code quickly).

                      This kind of programmable source code controls would make life a whole lot easier.

                      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  ·  IDE and Editor  ·  Flag idea as inappropriate…  ·  Admin →
                      • Drag and drop nuspec file on .NET Standard Project Package properties to import

                        It would be great if I could just drag and drop a nuspec file onto the Package properties in order to import all the settings from it. This is useful when migrating existing projects to .NET Standard.

                        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  ·  User Interface  ·  Flag idea as inappropriate…  ·  Admin →
                        • Make is possible to print any window; at present only some windows allow printing.

                          For example the disassembly window gives an error 'Value cannot be null. Parameter name: moniker' if printing is attempted. Similarly the 'Call Stack' window doesn't even have the print icon enabled.

                          It would be consistent if all windows allowed printing.

                          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…)
                            0 comments  ·  IDE and Editor  ·  Flag idea as inappropriate…  ·  Admin →
                          • Add support for System.Data.SQLClient in UWP

                            There are many reasons one would want to connect to an "on prem" SQL Server from a UWP. We have several applications we cannot distribute through the Windows Store because this limitation exists.

                            UWP are able to connect to other databases such as SQLite or MySQL. Why not allow SQL Server as well?

                            Please add support for System.Data.SQLClient in UWP.

                            24 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  ·  UWP / WPF / XAML Tools  ·  Flag idea as inappropriate…  ·  Admin →
                            • load symbols window

                              Give the option to hide the symbol loading window or show the information in the output window

                              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…)
                                0 comments  ·  IDE and Editor  ·  Flag idea as inappropriate…  ·  Admin →
                              • Refine error from Xaml-compiler, when event are connected, using "{binding ...}"

                                In my Xaml-code, i just changed:
                                Tapped="{x:bind myControl_Tapped}"
                                to:
                                Tapped="{binding myControl_Tapped}"
                                where it should have been:
                                Tapped="myControl_Tapped"

                                This is of course a very stupid error, but i've just used 3 hours trying to locate this, since the Xaml compiler only gives a very generic message:
                                "Object reference not set to an instance of an object."
                                - WITHOUT a specific location.

                                Reference to the relevant line, would have made it a lot easier to spot the error!

                                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…)
                                  0 comments  ·  UWP / WPF / XAML Tools  ·  Flag idea as inappropriate…  ·  Admin →
                                • Support .NET Core in Visual Studio 2017 without being necessary to install the whole web development package.

                                  In Visual Studio 2015, tooling for .NET Core was available as a package, installed separately from the whole IDE.

                                  However, Visual Studio 2017 RC has the option of installing the ".NET Core and Docker" workload. For developers that do not work with ASP.NET Core, this workload adds extra space to disk. So, I propose making a "Cross-platform development with .NET Core" workload, or something like that, but without web application development stuff.

                                  Thanks.

                                  26 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…)
                                    4 comments  ·  Install  ·  Flag idea as inappropriate…  ·  Admin →

                                    This is really good feedback. We’ve been reviewing what we do here. Right now, our plan is to merge the .NET Core features into the .NET desktop and .NET web workloads when the .NET Core tooling is no longer “preview-quality”. We would prefer not to silo it into a separate workload if possible, because we want it to be available to developers using the existing workloads. Interested to know what kinds of development you’re doing with .NET Core – are you running from the console?

                                    At the same time, we also recognize that we need to keep trimming the size of the web tooling – that remains a work in progress.

                                    One option for you is to install the .NET Core component specifically as an “individual component”, rather than as part of a workload. There’s a separate tab during installation to pick and choose…

                                  • Task List Support (TODO) for SQL Files, Queries, Store Procedures and Functions

                                    It's really frustrating that there is a task list in Visual Studio and Management Studio, but no interpretation of the common TODO parameter. It would be really helpful if e.g. --TODO: get's highlighted and recognized in the task list. Of course then I would expect to jump directly to the TODO, like it's used in C#.

                                    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  ·  SQL Server and Data Tools  ·  Flag idea as inappropriate…  ·  Admin →
                                    • Enable C++ printf format string checking in the main compiler, rather than just in static analysis

                                      The checks run by /analyze on code calling functions annotated with _Printf_format_string_params_ pick up a load of real problems. It's a shame we have to run the full static analysis to benefit from this, as the static analyzer is very slow compared to the compiler so out developers don't use it very often. Clang produces the warnings generated by their equivalent annotation in a normal compilation, not as part of their static analysis.

                                      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…)
                                        0 comments  ·  Languages - C++  ·  Flag idea as inappropriate…  ·  Admin →
                                      • Add a suggestion when renaming a XAML namespace

                                        If I rename a XAML namespace it gives me a suggestion to remove my unised namespace. I'd like a suggestion that updates the name in the XAML file.

                                        For example:
                                        xmlns:locl="clr-namespace:MyProject.MyLocalNameSpace"
                                        ...
                                        <locl:MyObject someProperty="{Binding something}"/>

                                        If I correct the spelling of local:
                                        xmlns:local="clr-namespace:MyProject.MyLocalNameSpace"

                                        I want an option to rename locl to local, just as I would have in a C# file. The goal is to get uses of that namespace to be like this:
                                        <local:MyObject someProperty="{Binding something}"/>

                                        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…)
                                          0 comments  ·  UWP / WPF / XAML Tools  ·  Flag idea as inappropriate…  ·  Admin →
                                        • 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 and Editor  ·  Flag idea as inappropriate…  ·  Admin →
                                          • Don't see your idea?

                                          Feedback and Knowledge Base