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. Allow users to change location for all Visual Studio files

    Working in a corporate environment, My Documents is mapped to a network share. This causes VS to freeze when I try to do certain tasks when I am working remotely. While some settings can be changed, others cannot without hacking the registry. I would like to be able to change all file based settings to my local drive.

    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 →
    • Support HSB Colors Better

      In many programs I make I like to have a good UI, and the best way to do this is by using HSB or HSL colors which can be easily modified to produce colors that look great together.

      Constantly, I am finding that I am having to creating my own custom ColorX class but it doesn't flow well with already existing .NET classes.

      I am asking for things like:
      Color.FromAhsl(alpha, hue, sat, lum)
      Color.H
      Color.S
      Color.L

      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…)
        1 comment  ·  .NET  ·  Flag idea as inappropriate…  ·  Admin →
      • improve _CopyfilesMarkedCopyLocal to consider references made in XAML when determining indirect references

        When I have a project C, that uses project B that uses a WPF-control provided by project A, project A assembly is not copied to project c bin directory unless project B calls some code in project A. If project B only uses a control defined in project A in one of its XAML-files, the build process does not recognize the dependency of B to A.

        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  ·  .NET  ·  Flag idea as inappropriate…  ·  Admin →
        • Make BulkObservableCollection<T> public to the core .NET Framework

          Using WPF and ObservableCollection<T> has serious performance issues if you need to add large sets of collection items at once, which is well known today. Each updated item fires multiple events that have significants performance costs.

          There are hundreds, if not thousands, of custom implementations on the net to overcome this problem and that have their own, more or less adventurous, way of adding a new "AddRange()" method that does not fire all those events for each element but only once once at the end up the collection update.

          There is already an existing implementation written by Microsoft, the BulkObservableCollection<T>…

          44 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 →
          • Add short and byte literals/suffixes

            "short num = (short)1" is annoying to type.
            "short num = 1S" much better.
            "byte num = (byte)1" is also annoying.
            "byte num = 1B" much better.

            I don't see why C# should not support something like this, it would be such a easy and quick implementation aswell.

            Thanks!

            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  ·  Languages - C#  ·  Flag idea as inappropriate…  ·  Admin →
            • Enhanced Synclock

              I would like to propose support for an enhanced Synclock (lock in C#) construct that would, instead of waiting to acquire a lock - if there is already a lock - would instead exit the function containing the Synclock statement.

              What I am trying to simulate with this new construct is the below.

              Public Sub DoWork()

              '-- START OF CODE REQUIRING ENHANCED SYNCLOCK
              Static bHere As Boolean = False
              If bHere Then Return

              Try
              bHere = True

              '-- Do protected work here

              Catch ex As Exception

              Finally
              bHere = False

              End Try
              '-- END OF CODE REQUIRING ENHANCED SYNCLOCK

              End…

              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 - Visual Basic  ·  Flag idea as inappropriate…  ·  Admin →
              • Enhance Report Project Template to allow Nested Report Folders

                Nested report folders are a simple and effective way to manage SSRS report permissions.

                Although available in SSRS the current Business Intelligence - Reporting Services - Report Server Project template does not allow nesting of folders (see http://partnersupport.microsoft.com/en-us/mpndevelop/forum/mpnvs/vs2103-report-project-sub-folder).

                This is a very serious problem for us as it makes it virtually impossible to bring complex SSRS projects under source control.

                Thank you

                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  ·  SQL Server and Data Tools  ·  Flag idea as inappropriate…  ·  Admin →
                • Hover on Javascript and show prompt

                  I use VS2012, create a website, ASP.NET WEB website. In Scripts folder in Solution Explorer, there are a number of js files.

                  So I create test.js file. I type $(, intellisense prompts, as the figure 1 shows.

                  Then I type the whole statement and mouse hovers on $, no prompt shows.

                  If I code in C#, mouse hovers on a function name or class name, there will be prompt as Figure 2.

                  Can VS support "hover prompt" of Javascript?

                  11 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 - JavaScript  ·  Flag idea as inappropriate…  ·  Admin →
                  • Fix Test Explorer output (monospace font and output not via link)

                    Arguably a great thing with VS2012/2013 was a new faster test executer. However, the new Test Explorer is in almost all ways a lot worse than the old version. One thing particular is that this UI completely disregard normal code fonts and uses a non-monospace font which causes output formatting to not follow normal trace output in the output window. Since every single developer in the world most likely at one point has depended on monospace font to get formatting right in traces this inconsistency is extremely annoying.

                    Not only the for the fact that to actually get to trace…

                    48 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…)
                      3 comments  ·  Test Tools  ·  Flag idea as inappropriate…  ·  Admin →
                    • Support for collectible assemblies

                      Support for collectible assemblies, i.e. assemblies that can be unloaded from memory (without deleting appdomain).
                      Example: Build a kind of REPL on top of your application so that user can script your application. This leads to high customization capabilities. The user script might be sent via files to the application running 24/7, hence you need emitted code to be collected.

                      1,407 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…)
                        19 comments  ·  .NET  ·  Flag idea as inappropriate…  ·  Admin →
                      • Async SyncLock

                        It would be great to have the possibility to do async synclocks.

                        Take the example of a data cache on an asp.net website.

                        Private DataLockObject As New Object

                        Public Async Function GetData(Name As String) As Task(Of String)
                        Dim Cache = HttpContext.Current.Cache
                        Dim tmp As String = Cache.Get(Name)
                        If tmp Is Nothing Then
                        Await SyncLock DataLockObject
                        If tmp Is Nothing Then
                        tmp = await GetDataFromDatabaseAsync(Name)
                        Cache.Insert(Name, tmp, Nothing, Date.Now.AddMinutes(5), System.Web.Caching.Cache.NoSlidingExpiration)
                        End If
                        End SyncLock
                        End If
                        Return tmp
                        End Function

                        The problem with this code is that 1. I cannot await a synclock (so my thread gets stuck doing nothing) 2.…

                        0 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 - Visual Basic  ·  Flag idea as inappropriate…  ·  Admin →
                        • Allow custom AddInProcess names when using System.AddIn

                          When using System.AddIn framework via process isolation, every AddIn process shows up as AddInProcess32.exe in the task manager. Please allow us to rename the name that shows in the taskmanager so that it's more descriptive for users?

                          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  ·  .NET  ·  Flag idea as inappropriate…  ·  Admin →
                          • Let nuget work in projects installed in multiple solutions

                            Projects fail if the project is used in multiple solutions and someone updates a project's nuget package from a different solution.

                            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  ·  Extensibility  ·  Flag idea as inappropriate…  ·  Admin →
                            • Support Data Breakpoints for C#

                              Data Breakpoints are very useful when debugging state issues as they break into the debugger when the value of a variable changes.

                              It is currently only supported in C/C++

                              Please extend support to C# and the other managed languages. We need it badly. The reason there is no uservoice suggestion is that most NET Developers don't know it exists in C++

                              578 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  ·  Debugging and Diagnostics  ·  Flag idea as inappropriate…  ·  Admin →
                              • Open Source SQL Server Compact (CE)

                                Although it has not been officially announced Microsoft is deprecating SQL Server Compact (CE). SQL Server CE filled a crucial use case for a small in process embedded database engine for applications and even websites. This need has not changed, if anything it has only become more so with the move to isolated phone and tablet (Metro) type apps. Without SSCE Microsoft won't have a product which fills this use case. Jet DB, MSDE and now SSCE will all be dead.
                                SQL Server Express LocalDB is not a replacement for SSCE, particularly due to the deployment constraints requiring admin privileges,…

                                117 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  ·  SQL Server and Data Tools  ·  Flag idea as inappropriate…  ·  Admin →
                                • Solution Explorer improvements for TypeScript-related files

                                  It would be really convenient to keep both js and js.map files under a typescript file node. Like it's done for LESS files.

                                  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  ·  Languages - JavaScript  ·  Flag idea as inappropriate…  ·  Admin →
                                  • Add support to watch and evaluate transparent proxy objects during debugging

                                    Currently, if we watch a transparent proxy, the object visualizer shows the transparent proxy members and we need to dig deep to reach the original object.

                                    Also, the transparent proxy object cannot be evaluated in watch expressions.

                                    Please add support so debugging codes involving the transparent proxies would be much easier.

                                    32 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  ·  Debugging and Diagnostics  ·  Flag idea as inappropriate…  ·  Admin →
                                    • Support Multilingual App Toolkit in VSOnline builds

                                      Just created a CI build for my latest app only to have it fail because the Multilingual app toolkit isn't supported on the build servers. Please support this!

                                      C:\a\src\App\App.csproj (474): The imported project "C:\Program Files (x86)\MSBuild\Microsoft\Multilingual App Toolkit\Microsoft.Multilingual.ResxResources.targets" was not found. Confirm that the path in the <Import> declaration is correct, and that the file exists on disk.

                                      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  ·  Cloud  ·  Flag idea as inappropriate…  ·  Admin →
                                      • Support creating Visual Studio extensions for earlier VS versions

                                        Right now one has to have Visual Studio 2010 installed to create a new extension, which would work on it (or do lots of trickery).

                                        It would be much better if VS Package wizard would ask for minimum target version, or determine it automatically based on target framework version.

                                        0 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  ·  Extensibility  ·  Flag idea as inappropriate…  ·  Admin →
                                        • Add folders for Visual F# Projects

                                          Realted to this post: http://stackoverflow.com/questions/5918534/why-cant-i-add-a-subfolder-in-a-f-project

                                          When using type providers, you ofen need to keep a static file to declare the type. Having a folder where I keep all of these files (versus scattered in my project's main folder) would be very helpful

                                          32 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…)
                                            3 comments  ·  Languages - F# Tools  ·  Flag idea as inappropriate…  ·  Admin →
                                          • Don't see your idea?

                                          Feedback and Knowledge Base