Visual Studio

Welcome to the Visual Studio UserVoice site. Let us know what you would like to see in future versions of the Visual Studio suite of products. This site is for suggestions and ideas. If you need to file a bug, visit the Visual Studio Connect site: http://connect.microsoft.com/visualstudio.

ASP.NET Runtime/Web Tooling suggestions have moved! All your ideas, including your votes, have been transferred and are searchable in the ASP.Net Uservoice forum. Please submit any new ASP.NET Runtime/Web Tooling suggestions, or vote on existing suggestions by going to http://aspnet.uservoice.com.

We look forward to hearing from you!

Thanks – Deon Herbert
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 vote and comment on it.

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

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

  • Hot ideas
  • Top ideas
  • New ideas
  1. Make Windows Phone 9 and Windows 9 metro mode support opengl

    Because Windows Phone 8 and Windows 8 metro mode don't support opengl, it is very difficult to convert IOS or Android game to Windows Phone 8 or Windows 8 platform!

    DirectX is a very urgly API for me, it is COM based API, it is difficult to use.
    In general, only C++ user use this API, I think it is not suitable choice to build graphics api on COM base.

    I think even opengl is a much better api for programmer.

    why not to redesign a modern, clean, C++11 style Graphics API based on directx11?
    or provide an opengl driver…

    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  ·  Flag idea as inappropriate…  ·  Admin →
    • Give us an idea on Prices for over 5 users

      We are hesitant to move due to uncertain pricing. If we knew a range or max suggested pricing we would move today.

      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  ·  General  ·  Flag idea as inappropriate…  ·  Admin →
      • TypeScript support jquery and jquery plugin

        Today most developer work with jquery. jquery change websites and daily increase plugins.Typescript is very good but when completed that support jquery and jquery plugin. please add jqeury syntax or others to compiler convert typescript to jquery script

        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…)
          1 comment  ·  General  ·  Flag idea as inappropriate…  ·  Admin →
        • Real-time co-editing of code

          Developers sometime need to work and collaborate on the same code: co-editing, annotation of code blocks, etc.

          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…)
            1 comment  ·  Editor  ·  Flag idea as inappropriate…  ·  Admin →
          • ScheduledToastNotification should inherit from ToastNotification so that the Activated, Dismissed and Failed events can be used

            ScheduledToastNotification should inherit from ToastNotification so that the Activated, Dismissed and Failed events can be used on scheduled toast notifications.

            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 →
            • Enable "Bookmark All" button when Quick FInd is looking in "Current Project"

              When Quick Find is looking in "Current Project" the "Bookmark All" button is disabled. But, this is when it is needed most. Suppose there are are 100 matches in the project. We should be able to work on something else while the find is doing its job. There is no reason to click the "Find Next" button 100 times.

              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  ·  General  ·  Flag idea as inappropriate…  ·  Admin →
              • Transaction Response Time graph

                "Transaction Response Time graph" generated using "Microsoft Visual Studio Ultimate" is not able to show all 'transactions' in a graph for a load testing scenario. There should be property / feature through which we can set 'No of transactions' for generated graph
                Regards,
                Himanshu

                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  ·  Visual Studio Ultimate  ·  Flag idea as inappropriate…  ·  Admin →
                • Change icon between library project and executable project

                  In a reasonably well structured solution, one will end up with multiple libraries and multiple applications, it would be nice to be able to easily identify what is a library and what is an exectuable.

                  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  ·  Flag idea as inappropriate…  ·  Admin →
                  • Offer comparison for file recovery

                    As VS has file comparison built in, this should be easy. The most annoying part of all the autorecovery systems throughout Microsoft products is that the user is asked if they want to recover a file but not provided with enough information to make such a decision. Is the recovered file older or newer? Smaller or larger? Most directly, what are the exact differences, line by line? I always have to track down the backup copy and use an external comparer...

                    But in VS, it should be dead simple to offer users the option of first looking at a side-by-side…

                    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…)
                      1 comment  ·  IDE  ·  Flag idea as inappropriate…  ·  Admin →
                    • Stack Size - WebDev.WebServer40 Default or a option in

                      Hi,

                      Today, the default size for thread stack in WebDev.WebServer40 (old cassini) is 100000. And the default size in w3wp is 40000. In this situation, we have some cases of stackoverflow in production that we don't have in development. Can you change de default in WebDev.WebServer40 to be the same that we have in production ?

                      Maybe, a new option in web.config to change this behavior

                      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  ·  Flag idea as inappropriate…  ·  Admin →
                      • binding configuration timeout in the right order

                        In the automated app.config wcf binding configuration of a service, the timeout can be ordered as they happen.

                        The order is now:
                        closeTimeout, openTimeout, receiveTimeout, sendTimeout

                        it could be:
                        openTimeout, sendTimeout, receiveTimeout, closeTimeout

                        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 →
                        • Make LINQ query syntax as expressive as extension method syntax

                          LINQ query syntax lacks a lot of features that exist in extension method syntax, such as .Single(), .First(), .Distinct(), .Average(), ...

                          I.e.:

                          var col =
                          from cust in customers
                          where cust.ID == 5
                          select first cust;

                          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 - C#  ·  Flag idea as inappropriate…  ·  Admin →
                          • Have resource header files use enum instead of #define

                            The header files for resources (by default, resource.h) are horrible to maintain in a multi-developer environment. If more than one developer makes resource changes, Visual Studio will assign their new resources the same numbers. Sometimes, the diff/merge system of version control systems catch this as conflicting changes, sometimes the changes will simply be merged. Either way, the header file needs manual repair, which is a royal pain. As a bonus, it's too easy to overlook the next values section at the bottom.

                            This is all so unnecessary. If the different types of resources (resource, command, control, symed) were each an…

                            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…)
                              1 comment  ·  Languages - C++  ·  Flag idea as inappropriate…  ·  Admin →
                            • Add factory method to NotifyCollectionChangedEventArgs

                              The class NotifyCollectionChangedEventArgs has 11 constructors, dealing with add, remove, replace, move, and reset actions, and single or multiple changed items.

                              I think we can create 5 static facotry methods, for example,
                              NotifyCollectionChangedEventArgs.CreateAdd(IList)
                              NotifyCollectionChangedEventArgs.CreateAdd(object)
                              NotifyCollectionChangedEventArgs.CreateAdd(IList,int index)
                              etc.

                              NotifyCollectionChangedEventArgs.CreateRemove(IList)
                              ...

                              I think with these facotry method, we can create our desipred instance quickly.

                              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 →
                              • Improve the UI design.

                                maybe use/apply silverlight in the IDE. make the UI feel similar to a WPF, also include a new item datetime picker for asp.net or winforms/wpf/silverlight

                                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  ·  General  ·  Flag idea as inappropriate…  ·  Admin →
                                • offer a C, VB, and C# compiler for the Arduino, Freescale, and other embedded devices.

                                  There are millions upon millions of embedded products on the market now, and the number is growing. People look to Microsoft for quality development tools. It would be helpful to have a Microsoft development tool available.

                                  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  ·  Flag idea as inappropriate…  ·  Admin →
                                  • vb.net: make generated code-artefacts like class, sub, fields, methods: public, protected or private

                                    The default-behaviour if you type something new or unknown in your code and you work with:
                                    - "generate class"
                                    - "generate property"
                                    - "generate field",
                                    - "generate method"
                                    do some random things.

                                    Often you get a "Class MyClass..." without specification of "public", "private", or "protected".

                                    A Class-Field becomes a "Dim myField"... instead of a "Private myField"

                                    More and more frameworks using reflection to work and it's not really clear whats the default of an empty directive or a dim instead of private
                                    does.

                                    It is not really easy to see those things if you search issues in your code...
                                    So…

                                    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 - Visual Basic  ·  Flag idea as inappropriate…  ·  Admin →
                                    • Dynamic Modularization Framework

                                      In the DevOps trend, Microsoft needs to bring a reference open modularization framework.

                                      Some years ago COM based developement has been a step into that direction with language independence.

                                      Since that time OSGi specification has been recognized and it is already strongly supported in the Java world meanwhile being
                                      centralized and target only single programming language.

                                      We need a framework to support distribution execution and programming language independence. Modern solutions which may be written in different programming languages need to be able to call each other transparently so that it can be applied in many different platforms and langagues.

                                      This…

                                      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  ·  General  ·  Flag idea as inappropriate…  ·  Admin →
                                      • Shift+Click a control in the toolbox to lock it and a new control is added for every click on the form.

                                        As a former Borland Delphi developer, I miss a simpel function in the VS IDE.
                                        In Delphi you are able to [Shift]+Click a control in the ToolBox and this control is now locked so that you can place several controls on the form, simply by clicking the form.

                                        This makes it very easy to place a lot of similar controls, like labels or textboxes, on the form.
                                        The control is released by clicking an arrow icon afterwards.

                                        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…)
                                          1 comment  ·  IDE  ·  Flag idea as inappropriate…  ·  Admin →
                                        • Easier Immutable Classes (case classes)

                                          I often find myself writing immutable business objects (objects with no logic, only data). For example, EventArgs and Exception classes. Here is one I wrote today:

                                          public class SelectedMazeChangedArgs : EventArgs
                                          {
                                          public Maze PreviousMaze { get; private set; }
                                          public Maze SelectedMaze { get; private set; }
                                          public SelectedMazeChangedArgs(Maze previousMaze, Maze selectedMaze)
                                          {
                                          PreviousMaze = previousMaze;
                                          SelectedMaze = selectedMaze;
                                          }
                                          }

                                          This is what that same class would look like in Scala:

                                          case class SelectedMazeChangedArgs(Maze PreviousMaze, Maze SelectedMaze) extends EventArgs

                                          As a bonus, Scala also automatically overrides .equals() and .hashCode() for you.

                                          When you write a lot of EventArgs…

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

                                          Feedback and Knowledge Base