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: https://connect.microsoft.com/visualstudio.

We would also like to invite you to check out the Announcements section we have added to this site, where we will be posting special opportunities for you to participate in.

We look forward to hearing from you!

The Visual Studio Team
Terms of Service and Privacy Policy

NEW! Announcing Limited Preview for Visual Studio Online Code Search

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. Provide the "open-source mode" and "git apprentice mode" in the visual studio

    Although I used Matlab and fortran for many years, I started to write windows program around the past half year. It was by chance that I started to use visual studio to code because I have quit my original job for about 2 years so that I have time to think of about what I can do. At least I could try to make some programs to solve my problems.
    Originally I tried to use linux but I was frustrated by too many packages that I needed to install before I can compile a code and too many parameters were…

    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…)
    • I need a driver for my wheel mouse that I can change the direction that the wheel scrolls as on touch devices

      I need a driver for my wheel mouse that I can change the direction that the wheel scrolls as on touch devices

      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  ·  General  ·  Flag idea as inappropriate…  ·  Admin →
      • Attach VS to remote FSI

        With cross-platform CLR moving full steam ahead it would be great to see some features to assist with developing against other platforms from VS. One area that would help at a lot, particularly when working on code interacting with the system, is if VS could attach to a remote FSI instance. This running FSI could have it's STDIN/OUT attached to a network socket as an example. Optionally, a local command/script could be specified that would ensure the remote FSI instance is started/restarted/stopped as required.

        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 - F# Tools  ·  Flag idea as inappropriate…  ·  Admin →
        • Enable Abstract Syntax Tree Source Files via Roslyn

          Now that Roslyn is available (or will be available), it is time for Visual Studio to start thinking in files that represent Abstract Syntax Trees (ASTs), or .ast files. .ast files are the actual source files that are checked into source control. When an .ast file is loaded into Visual Studio, the developer's "formatting preference configuration" is applied to the .ast file to display the file to the preference of the developer.

          Formatting preference configurations would include things like:
          - Spaces or Tabs for tabbing
          - Braces on same line as method declaration or below
          - Spaces around symbols
          -…

          15 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…)
            7 comments  ·  IDE  ·  Flag idea as inappropriate…  ·  Admin →
          • Floating tab as normal window

            Make behavior of floating tab like a normal window to be separately minimized from main VS window.

            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  ·  Flag idea as inappropriate…  ·  Admin →
            • C++ Cordova plugin without Java or Objective-C

              Since Cordova.exec serialize the method name and its parameters, it would be awesome to be able to avoid calling a Java JNI (or Objective-C) wrapper to pass these parameters to some C++ code.
              I wrote an Android NativeActivity in C++ but Cordova always requires the java class instead of using directly the C++ NativeActivity.

              I believe the same could be done for iOS, that is avoiding the ObjectiveC wrapper and invoke directly C++ code.

              This would really ease the portability of business logic which would have poor performance using javascript.

              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  ·  Multi-Device Hybrid Apps  ·  Flag idea as inappropriate…  ·  Admin →
              • Explain what is "default image"

                The verification of Windows App Store failed with one of this message: "Image file snalllogo.png is a default image"

                I think it is good to explain what is "default image".

                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  ·  Windows 8 Apps  ·  Flag idea as inappropriate…  ·  Admin →
                • Show indicator whether last build is fresh or not

                  Image you are coming back to your computer after some time. You need a fresh build of the application but you don't remember whether you made any changes after the last build. You have to start a build just to be sure. That can be a waste of time if building takes >30sec.

                  Visual Studio should show a small indicator icon in the status bar. Green for "Build is current - no need to rebuild", gray for "build might be out of date - rebuild if you need a current build".

                  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 →
                  • Fifth Step

                    Fifth Step
                    Summary:
                    In this article suggests that we see itself of programming in a view of object oriented
                    Background:
                    Each program is formed from a small component named bloke. A bloke can continue an Instruction or many Instructions
                    Article:
                    Each bloke of program has a binary input and when get one then runs. Input get one when previous bloke is implemented or run without error.
                    Each bloke has two output Port. First port when get one that Instructions in bloke is implemented or run without error. Second port when get one that Instructions in bloke is implemented or run…

                    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 →
                    • Colour code // TODO: comments with different colour from usual comments

                      Colour code // TODO: comments with different colour from normal comments. Instead of green, make it blue or red etc so it stands out more and can be distinguished quickly while scrolling.

                      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  ·  Editor  ·  Flag idea as inappropriate…  ·  Admin →
                      • Support Object Initializers on ExpandoObjects

                        The following really seems like a feature that should work, but it gives a compiler error:

                        dynamic expando = new ExpandoObject {
                        FirstName = "David",
                        LastName = "Lee"
                        };

                        It makes sense for Object Initializers to work on all types that implement IDynamicMetaObjectProvider. This inline initialization is especially useful when you want to pass the object inline as a parameter.

                        For example:

                        RegisterOptions(
                        first: new ExpandoObject { FirstName = "A", LastName = "B" },
                        second: new ExpandoObject { FirstName = "C", LastName = "D" },
                        third: new ExpandoObject { FirstName = "E", LastName = "F" }
                        };

                        Instead of:

                        dynamic…

                        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  ·  Languages - C#  ·  Flag idea as inappropriate…  ·  Admin →
                        • Show test case description in web test runner while running a test

                          In MTM, when you execute a test, it is possible to view the summary for the test case. In the Web Test Runner in VSO (of TFS web access for on-premise), the summary of the test case is not available.

                          The summary should be accessible when a test is being executed because it can contain information that will aid a tester as to the purpose of a test or additional information that does not fit well in a test step or that cannot be easily communicated in a title of a test case.

                          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  ·  Visual Studio Test and Lab Management  ·  Flag idea as inappropriate…  ·  Admin →
                          • Stop Building When The First Error Occurs

                            We have lots of projects in our solution. It would be extremely helpful for Visual Studio to stop building the rest of the projects in the solution when a project errors. Otherwise we have to sit there and wait for the other projects which reference the project that failed to finish compiling. Those projects create errors about missing dependencies. The extra errors are a waste of time to look through. I would just like it to stop on the first error.

                            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  ·  Visual Studio Ultimate  ·  Flag idea as inappropriate…  ·  Admin →
                            • Improve accessibility ensuring all advertised short-cut keys work as expected. some short-cut keys do nothing! or perform unexpected actions

                              Improve accessibility ensuring all advertised short-cut keys work as expected within microsoft visual studio 2013. some short-cut keys do nothing! or perform unexpected actions

                              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  ·  Flag idea as inappropriate…  ·  Admin →
                              • Add multi line text input for parameters in MTM and tfs online within a test case

                                Hi, I would like to have the ability to use alt and enter to move to a new line (like you can in test steps) within a test case. This would make the test case a lot more readable.

                                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 Test and Lab Management  ·  Flag idea as inappropriate…  ·  Admin →
                                • Implement auto properties that have a hidden internal variable.

                                  This would allow fine control of get and set actions on an auto-property without the need for extra unnecessary member variables.
                                  The syntax would look something like this (where variable is a keyword for the inner property value):

                                  public string MyProperty
                                  {
                                  get
                                  {
                                  return variable;
                                  }
                                  private set
                                  {
                                  variable = value;
                                  }
                                  }

                                  1 vote
                                  Vote
                                  Sign in
                                  Check!
                                  (thinking…)
                                  Reset
                                  or sign in with
                                  • facebook
                                  • google
                                    Password icon
                                    I agree to the terms of service
                                    Signed in as (Sign out)
                                    You have left! (?) (thinking…)
                                    0 comments  ·  Languages - C#  ·  Flag idea as inappropriate…  ·  Admin →
                                  • Add constructor to interface

                                    I think we need a posibility to add constructor in interface. I am very curious, why this simple feature isn't implemented yet. Why can't i write something like

                                    interface ITest
                                    {
                                    ITest(string s);
                                    }

                                    So all inherited classes will need to implement constructor that will take string as parameter

                                    4 votes
                                    Vote
                                    Sign in
                                    Check!
                                    (thinking…)
                                    Reset
                                    or sign in with
                                    • facebook
                                    • google
                                      Password icon
                                      I agree to the terms of service
                                      Signed in as (Sign out)
                                      You have left! (?) (thinking…)
                                      0 comments  ·  Languages - C#  ·  Flag idea as inappropriate…  ·  Admin →
                                    • Add access modifiers in interface

                                      I think we need a posibility to add access modifier to interface method or property so we will be able to write something like

                                      interface ITest
                                      {
                                      string Name { get; private set; }

                                      private void DoSomething();
                                      }

                                      Even if it is not possible with methods, it is possible with properties, i am sure

                                      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 →
                                      • precompile web project publish

                                        At the time of publication if you can make it so that files that have not changed are not published again

                                        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 →
                                        • Local class declaration

                                          java supports local class declaration, e.g.
                                          public void Method1(){
                                          class Class1 {
                                          }
                                          }
                                          This is super useful when a function logic is complex, and some data types are not used outside the function. Such local class just solves the problem.
                                          Besides, C++ also supports that.
                                          It is a pity that C# does not support that feature.
                                          And I think this is just a syntax sugar, and does not involve the changes of CLR. So it is an easy feature.
                                          In java, the local class is just treated as an inner class, e.g. MethodName$LocalClassName.
                                          And C# can use the same…

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

                                          Feedback and Knowledge Base