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. 

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. Add an IDE-level setting for default C# language version

    In team environments, there are frequently a subset of team members that want to be on the "latest and greatest" version of Visual Studio, which implies the latest C# version compiler. However, this can be problematic for other team members that are not interested in upgrading as quickly as their peers. Code that compiles for a developer running VS2015 will fail for peers running VS2013 if it uses C# 6.0 features.

    There is currently a mechanism for specifying the language version on a per-project basis, but for teams with a large number of project files it can be cumbersome to…

    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 →
    • Bundle and minification in ASP.NET Core 1.1 (and above)

      There's no built in Bundle and minification in VS2017RC ASP.NET Core 1.1.

      Need an easy way to builde and minify js + css.

      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  ·  Web Development Tools  ·  Flag idea as inappropriate…  ·  Admin →
      • Specify region folding state in code so that it can be restored in the next session.

        For example, "#region [folded]" can be used to specify the default folding state.When folded, the "[folded]" should not be displayed on the label for the region.

        When opening the source file again in the next session, Visual Studio can fold any regions that starts with [folded], and it should not interfere with other editors that do not understand it.

        Examples of regions that should be folded by default
        #region [folded] Hello world

        Examples of regions that should NOT be folded by default
        #region Hello world
        #region folded laundry
        #region [folder]

        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 →
        • installer checks room for files

          The install downloads files then installs but if you have C drive as SSD with not much room the install fails even if you have selected D drive for the install. So you could also allow the install to use drive D or any other that has the room for the downloaded files. The default seems to be for the C drive to do the work before it is installed to D.

          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  ·  Install  ·  Flag idea as inappropriate…  ·  Admin →
          • Julia Tools for Visual Studio

            Please create a plugin for Julia on Visual Studio to enable VS to be used as a Julia IDE, as was done with Python.

            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 - Other  ·  Flag idea as inappropriate…  ·  Admin →
            • Razor formatting is really bad

              I dread the moment I paste something in my cshtml page... and all the indentation gets screwed up!

              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 →
              • Web Publish pushes to multiple destinations

                One can currently publish an ASP.NET MVC solution to a single destination. To push it to 2 destinations (e.g. on a web farm) you have to use Publish it to the first web server, and then to a second webserver (and so on). This takes time as it recompiles each times. What would be great would if you could just do a single publish (single compilation) and then it pushes to multiple destinations.

                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 →
                • Context Color highlighting

                  in typescript files, all functions in the file have both the word Function and the function name color coded the same.
                  in the previous version of VS, the function was blue (as it is in C# files). But the method name has no special color coding.

                  I think there are too many items in the new schema colored blue.
                  Keywords (undefined, true, false, null, function, export)
                  Method names should not be colored blue. It gets confusing. Especially when the function is an exported function.

                  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 →
                  • Solution Explorer - a shortcut for team explorer

                    Include a context menu option on Solution Explorer which open Team Explorer, with that item selected. Something like the "Open folder in Windows Explorer", this kind of shortcut for Powershell would be great as well.

                    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  ·  Version Control (Git/TFVC)  ·  Flag idea as inappropriate…  ·  Admin →
                    • CMake for Linux

                      When using a CMake project, I want to be able to build & debug on Linux. The whole point of CMake is portable projects. It is difficult that you have to use a windows specific project system to build on Linux.

                      9 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 and Editor  ·  Flag idea as inappropriate…  ·  Admin →
                      • Add selection of .NET Core version in addition to .NET Framework version when creating a new .NET Core project

                        When a new .NET Core project is created, in addition to .NET Framework version selection, the list should present .NET Core version selection.

                        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 →
                        • Allow to combine XAML and C# simmilar to JSX

                          I would love to see this (and considering popularity of ReactJS many others as well):

                          <Button Click={ViewModel.DoSomething} />
                          <Button Click={(o, e) => ViewModel.DoSomething} />

                          <ListBox ItemsSource={ViewModel.Items.Where(....)} />

                          <StackPanel>
                          {ViewModel.Items.Select(item =>
                          item.HasData ? <TextBlock Text={item.Name} /> : <Separator />
                          }
                          </StackPanel>

                          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 →
                          • Make XAML less verbose

                            There are many places in XAML, where `ContentPropertyAttribute` would make xaml less verbose.

                            Most notoric example is Style's Setter.Value.

                            <Setter Property="Foreground">
                            <LinearGradientBrush>...</LinearGradientBrush>
                            </Setter>

                            instead of:
                            <Setter Property="Foreground">
                            <Setter.Value>
                            <LinearGradientBrush>...</LinearGradientBrush>
                            </Setter.Value>
                            </Setter>

                            Please, review every class supposed to be instanciated in XAML and add ContentPropertyAttribute if it makes sense.

                            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 →
                            • Step Into Specific on expression body methods

                              Step Into Specific does not work on expression body methods (C# but maybe on all languages), it is also not documented anywere so I don't know if it's a bug or an explicit limitation. Would, at least, be nice to see it in the docs.

                              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  ·  Debugging and Diagnostics  ·  Flag idea as inappropriate…  ·  Admin →
                              • VS 2017 - Enable xUnit to be the default test framework for CodedUI

                                CodedUI only supports the MSTest framework, xunit works cross platform and is a joy to use(https://youtu.be/Mw5lODrvELk). Please enable CodedUI(https://msdn.microsoft.com/en-us/library/dd286726.aspx) to work with xUnit by default.

                                96 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  ·  Test Tools  ·  Flag idea as inappropriate…  ·  Admin →
                                • Allow Visual Studio on Windows to debug remote linux mono process

                                  .Net Core can run only on a limited set of linux distributions and versions. RHEL/Centos 6, old ubuntu or old SuSe version and others cant run it so we are forced to use mono to run .net/.net core application on those systems.

                                  VS 2017 will support remote debugging by SSH of linux .net core process.
                                  https://blogs.msdn.microsoft.com/visualstudioalm/2017/01/26/debugging-net-core-on-unix-over-ssh/

                                  Xamarin Studio allows to do this for mono (https://github.com/logicethos/SSHDebugger).

                                  It should be easy to also add this to VS2017 and would be great for people using VS and mono for platforms not supported by .net core ( many distributions, raspberry, etc )

                                  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 'filename' column to Bookmarks window

                                    Currently the Bookmarks window shows the full 'File Location' of the bookmarked location. This takes up a large amount of horizontal screen real estate, and requires parsing the text each time I look for a bookmark.

                                    Consider adding a 'File Name' column option, and enabling/disabling various other column options.

                                    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 →
                                    • Make installer less confusing

                                      The new installer is confusing, for example it was not obvious the first time I installed it that I could scroll down in the workloads list. So I didn't get the obvious ,NET core stuff. Secondly if i choose .NET desktop development and then add .NET 4.6.2 and then accidentally uncheck it, I loose all the customization. It sould remember that for each workload. Also I think that the checkbox sould not be tield to the entire "box" but instead only the checkbox it self. So I could switch between the selected worksloads and evaluate my choices. It 's also…

                                      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…)
                                        1 comment  ·  Install  ·  Flag idea as inappropriate…  ·  Admin →
                                      • Visual merge improvements

                                        1. In visual merge, show diffs for the conflicting blocks (left against right), to see where they actually diverge. Sometimes it's not obvious. Try to line up the conflicting blocks by alike lines.
                                        2. In visual diff merge, fix view jumping when the cursor moves across missing range of lines.

                                        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  ·  Version Control (Git/TFVC)  ·  Flag idea as inappropriate…  ·  Admin →
                                        • Give user a way to turn off Microsoft Git Provider completely.

                                          The only two things Microsoft Git Provider does is
                                          - cause problems for ReSharper (file is still read-only bug that is there for like two versions of VS)
                                          - eat CPU time

                                          It would be nice if there was a way to disable this abomination completely and not have it come back to life every time I reload Visual Studio.

                                          51 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 →
                                          • Don't see your idea?

                                          Feedback and Knowledge Base