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. If searching NuGet installs returns no results, suggest the browse tab to get the NuGet

    The NuGet PM defaults to Installed NuGets and I frequently forget that. So, when I search for a NuGet to download and get no results, it can get confusing. Suggesting to search in the browse tab would make this less confusing.

    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  ·  NuGet Package Manager  ·  Flag idea as inappropriate…  ·  Admin →
    • Add a new shortcut for amending properties (a bit like With but much more concise) to avoid repetition.

      Add a new shortcut for amending properties (a bit like With but much more concise) to avoid repetition.

      For example, instead of:
      opPrice.Items.Item(0).DisplayText = opPrice.Items.Item(0).DisplayText.Replace("()", schemeName)

      it should be:
      opPrice.Items.Item(0).DisplayText = ..Replace("()", schemeName)

      In other words, a double-dot (or possibly triple-dot) would be a shortcut for the thing being assigned.

      Shortcuts such as += already exist but .. would be a useful shortcut in numerous cases where += doesn't apply - for example, if you want to apply Replace or Trim or ToUpper.

      Instead of:
      custName = custName.Trim()
      I propose
      custName = ..Trim()

      It's a bit like With, but a…

      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 →
      • Java compilier

        Please add Java compilier, This will help many a novice programmer and can improve your ratings

        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 →
        • Improve the SQL Editing features in VS and SSMS so that developers don't have to use a third party tool from Red Gate.

          It is shocking that after almost 30 years of Microsoft SQL Server, the tooling has not improved much at all. VS2017 now comes with a lite version of Red Gate's SQL Prompt, which just means that our developers will want us to buy the Pro version of the entire toolset, which is expensive. Come on Microsoft, where is your effort to provide decent tooling?

          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 →
          • Make SSIS/SSRS embedable into applications.

            There are many scenarios when an application needs to load data into a table( ex. "Import From File" functionality). It would be great if one could embed a lightweight version of SSIS runtime into an application without having to install/configure servers.

            I would still want to create/debug DTSX files in VS but instead of a separate project type, it would be available to add to any VS project type.

            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 →
            • Please add support in Visual Studio (2015) to properly edit .tcl files (coloring and unique words)

              Currently editing .tcl files is torturous as there are no colors in the editor. It is simple to add for you guys and would greatly benfit .tcl developers worldwide

              Thanks

              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 →
              • Label Running Instances of the VS Program

                I often use Visual Studio to connect to many different TFS instances at the same time. It would be nice if the label that shows when you mouse the window in the Task Bar were customizable to show something that would help me determine which one was which.

                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 →
                • 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…)
                    1 comment  ·  Accessibility  ·  Flag idea as inappropriate…  ·  Admin →
                  • Confirm before closing side windows

                    When I click "x" to close a window different from the main one, I would like to get a confirmation box. Reason: if I closed the main window, I can restart the Studio. If I closed a side window the list of tabs opened there is lost.

                    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…)
                      1 comment  ·  IDE and Editor  ·  Flag idea as inappropriate…  ·  Admin →
                    • visualstateGroup

                      It would be very useful if the XAML UI could check to make sure that all the VisualStates and VisualStateGroup are valid for the TargetType specified for the style. This would make the transition from previous versions of WinRT to UWP much easier and would also help in those cases when you make a type and are trying to troubleshoot whats going wrong with the UI.

                      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  ·  UWP / WPF / XAML Tools  ·  Flag idea as inappropriate…  ·  Admin →
                      • Expose Collation Info of SQL Server Result Set via SqlDataReader

                        The exact collation of each string field should be publicly available. The properties can be added to the DataTable returned by the GetSchemaTable() method, or they can be added as individual properties and/or methods of the SqlDataReader class, or a combination of both. The properties are:
                        1) LCID
                        2) SqlCompareOptions
                        3) collation_name (e.g. Latin1_General_100_BIN2)

                        The "LCID" and "SqlCompareOptions" values already exist in the "SqlDataReader" class, but are private or internal ( http://referencesource.microsoft.com/#System.Data/System/Data/SqlClient/SqlDataReader.cs,277 ). These would make sense to put into the GetSchemaTable output.

                        The "collation_name" value is necessary due to the combination of "LCID" and "SqlCompareOptions" not being enough 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…)
                          2 comments  ·  .NET  ·  Flag idea as inappropriate…  ·  Admin →
                        • Change default path when labelling (source control) a solution

                          When I apply a label to a solution, I want to label the entire solution (all files) rather than just the solution file (.sln file), but that is not the default option.

                          I label a solution by selecting the solution in the Solution Explorer. Then I click File -> Source Control -> Advanced -> Apply label. Now a dialog appears, allowing me to choose the source control path I want to label. By default, it says something like $/MySolution/MySolution.sln. I would prefer it would just say: $/MySolution

                          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 →
                          • The install process and download is stupid

                            The install process and download is stupid. I would suggest allow user to set requirements via UI, and download the cache. 20GB download is crazy. Or maybe breakup in various ISO. e.g. VS studio core (C#, C++ etc) then ISO for Xamirin + Android, and so forth. The cost of bandwidth to high for each little update...

                            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  ·  Install  ·  Flag idea as inappropriate…  ·  Admin →
                            • It's about time for an ASP.NET Core API client entity generator

                              Please make a built in tool in VS that integrates seamless consumption of Web API apps by providing seamless client DTOs/POCOs/Entities and Http Clients generated automatically by client projects, answering the local demands (for example INotifyPropertyChanged implementation in a XAML project), JS/TS entities for web-app consumers etc.

                              I'd love to see something like we used to have when the WCF RIA Services mania was going on in those beloved LoB glorious days when Silverlight existed.

                              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…)
                                1 comment  ·  IDE and Editor  ·  Flag idea as inappropriate…  ·  Admin →
                              • c++: remove indent after multi-param template declaration when auto formatting

                                Please correct auto formatting for multi-line, multi-param template declarations. The formatter adds an indentation before the following struct/class declaration.

                                Refer to attached image

                                Also, can you add more C++ auto formatting options. Especially, an option to remove the offending auto indent after a multi-line, multi-parameter template declaration.

                                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 →
                                • Range checking in debug mode (for valarrays)

                                  All array types (normal arrays, vectors, valarrays, etc.) should be automatically range checked in debug mode. Your documentation suggests they are, but at valarrays are not.

                                  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  ·  Flag idea as inappropriate…  ·  Admin →
                                  • XmlSerializer should recognize "True" as a valid boolean (Case insensitivity)

                                    Problem: "true" is recognized as valid by XmlSerializer, while "True" with a capital T is not.

                                    Expected behavior: Clearly, the value is unambiguous and valid and should be recognized as the boolean value "true".

                                    Error trace:

                                    2016-10-24T10:25:36.8585544 |System.InvalidOperationException: There is an error in XML document (15, 10). ---> System.FormatException: The string 'True' is not a valid Boolean value.
                                    2016-10-24T10:25:36.8585544 | at System.Xml.XmlConvert.ToBoolean(String s)
                                    2016-10-24T10:25:36.8585544 | at Microsoft.Xml.Serialization.GeneratedAssembly.XmlSerializationReaderPureNeuralNetMtTrainingConfig.Read6_PureNeuralNetMtTrainingConfig(Boolean isNullable, Boolean checkType)
                                    2016-10-24T10:25:36.8585544 | at Microsoft.Xml.Serialization.GeneratedAssembly.XmlSerializationReaderPureNeuralNetMtTrainingConfig.Read7_PureNeuralNetMtTrainingConfig()
                                    2016-10-24T10:25:36.8585544 | --- End of inner exception stack trace ---
                                    2016-10-24T10:25:36.8585544 | at System.Xml.Serialization.XmlSerializer.Deserialize(XmlReader xmlReader, String encodingStyle, XmlDeserializationEvents events)
                                    2016-10-24T10:25:36.8741865 | at System.Xml.Serialization.XmlSerializer.Deserialize(TextReader textReader)
                                    2016-10-24T10:25:36.8741865 |…

                                    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  ·  .NET  ·  Flag idea as inappropriate…  ·  Admin →
                                    • Fix the C++11 concurrency implementation to use the Moniker allocator AND dealloactor (and not just one of them)

                                      Up until the last time I checked, the concurrency runtime would use the Moniker allocator and not use it to deallocate memory. This causes issues with some custom memory allocators.

                                      If the C++11 concurrency implementation would use it to allocate AND deallocate, the problem would be solved.

                                      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 visual studio emulator for android to xde 10.0.14393.0

                                        actually latest version of visual studio emulator for android dependes from xde 10.0.10586 even if I've installed windows 10 sdk 10.0.14393.0.

                                        XDE 10.0.10586 doesn't work on my PC and I am unable to use android emulator.

                                        Please update to XDE 10.0.14393.0.

                                        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  ·  Mobile App Development  ·  Flag idea as inappropriate…  ·  Admin →
                                        • if finally & loop finally clauses

                                          A clause which is run after any of the conditions in an if tree are true. Note: When used with else, the finally clause will only run if any of the other conditions are true. Sort of like an else-else.

                                          And a final clause which is run if the loops exits from its own condition, not breaking. Instead of reduntantly checking the i variable. Should work for both foreach and for loops.

                                          Syntax:
                                          if (something)
                                          doOne();
                                          else if (something)
                                          doTwo();
                                          finally
                                          ifOneOrTwo();

                                          foreach (var item in collection)
                                          // run loop
                                          finally
                                          // do something

                                          Before:

                                          var done = true;
                                          if…

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

                                          Feedback and Knowledge Base