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 Design View available for x64 target platforms with custom elements

    Design view is unavailable for x64 and ARM target platforms when the document contains custom elements (XAML with a user control, for example).

    175 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  ·  XAML Tools  ·  Flag idea as inappropriate…  ·  Admin →
    • Support c++11 concurrency header files in c++/cli

      When using the /clr switch in VC++ 2012, it is not possible to include some of the new c++11 header files (i.e. <atomic> / <thread>) as compilation will break.

      One typical application of c++/cli is to wrap a native class inside a (managed) ref class to expose its functionality to the .net world.

      The restriction previously described prevents a ref calss to consume a native class with members like std::thread or std::atomic<T>.

      A workarround (pimpl-idiom) is discussed in this topic:
      (http://social.msdn.microsoft.com/Forums/en-US/vclanguage/thread/9771f61c-05b7-4e3e-96fb-ac9ea31ac3f4)

      The former approach requires to change existing code, therefore support for the new c++11 header files in…

      174 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 - C++  ·  Flag idea as inappropriate…  ·  Admin →
      • Provide intellisense in rehosted designer scenario

        Intellisense should work automatically against C# and VB expressions but also allow hooks for other expression languages.

        173 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  ·  Windows Workflow Foundation  ·  Flag idea as inappropriate…  ·  Admin →
        • 'params' keyword for every list

          If you're a C# developer, I bet you've used something like this before:

          ***** SomeType DoSomething(params AnotherType[] array){...}

          It is a lot easier to use the 'params' modifier than to create a new array with all the paremeters of the same type you want to insert in a method, specially when it comes to small test projects.

          However, using this comes with a disadvantage: you MUST use the array type. No IList, List<T>, Dictionary<TKey, TValue>, etc.. I believe there is no such reason not to allow these list-like types to use the params keyword. Example:

          ***** SomeType DoSomething(params ListType list){...}

          173 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…)
            18 comments  ·  Languages - C#  ·  Flag idea as inappropriate…  ·  Admin →
          • Enable Export to Excel for Web Application Template

            Exporting to Excel is only available for local desktop applicaitons, but more applications these days are deployed as web applications. The export to Excel feature is incredibly valuable, and would be a great addition to applications deployed to the Web and Cloud.

            173 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  ·  LightSwitch  ·  Flag idea as inappropriate…  ·  Admin →

              Chris,

              Thank you for the suggestion. We have added it to our product backlog and will consider it for a future release.

              Exporting to Excel is possible using some custom code. See http://social.msdn.microsoft.com/Forums/vstudio/en-US/5494c41d-bce2-46f6-a1ab-0d09e7004653/lightswitch-html-client-how-to-export-to-excel-or-word?forum=lightswitch to read a few of the solutions provided by the LightSwitch community.

              Thanks,
              Elizabeth Maher, LightSwitch Team

            • Collapse Product Backlog Items marked as Completed.

              It is confusing to my team that when a Product Backlog Item is marked as Done and all associated tasks are marked as done that the story remains on the board in its default state.

              My assumption is that it would show up collapsed and either move to the bottom of the list or change colors to "gray out".

              171 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…)
                under review  ·  10 comments  ·  Team Foundation Server  ·  Flag idea as inappropriate…  ·  Admin →
              • Set the default for "Run when build error occurs" to "Do not launch"

                The remarkably useless option to run the old version when a build error occurs is the first VS prompt a user sees when there is a build error for the first time after installation. It is annoying especially because it is totally useless but recently I started teaching programming to beginners and this option is a BIG issue. Most people are used to checking the "don't bother me anymore" checkbox and then clicking "yes" on dialogs. You can imagine the mess this causes for a beginner who doesn't even know why his changes (which do not compile) do not affect…

                169 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  ·  Project  ·  Flag idea as inappropriate…  ·  Admin →
                • C++ compiler should warn about wrong member initialization order

                  Every few years this suggestion emerges and I think now is the time for next iteration.
                  In C++ the order of class/struct member initialization is determined by the order of member declaration and not by the order of their appearance in member initialization list. It is therefore extremely easy to to write a code that is very hard to find, e.g.:

                  struct S {
                  int a;
                  int b;

                  S( int i ) : b(i), a(b+1) {}
                  };

                  int main()
                  {
                  S s(42);
                  }

                  and we have garbage in s.a what might be not obvious for a novice programmer.
                  GCC issues…

                  169 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…)
                    5 comments  ·  Languages - C++  ·  Flag idea as inappropriate…  ·  Admin →
                  • "View White Space" should show line endings too

                    As described here: http://connect.microsoft.com/VisualStudio/feedback/details/621096/view-white-space-should-show-line-endings-too

                    Request:
                    * Visual Studio > Edit menu > Advanced > View White Space.
                    * Currently, this feature shows a symbol for space and tab characters.
                    * I would like to be able to view line endings too.
                    * I would like to be able to view what style of line ending was used.

                    And that's it for the request.

                    And now I offer some suggestions as to how this may look. Here's what I've seen other tools do:
                    * TortoiseMerge uses a single, unobtrusive symbol. It is "light" and does not distract from the main document…

                    167 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  ·  Editor  ·  Flag idea as inappropriate…  ·  Admin →
                    • Give option to search only in uncommented code

                      When searching for a string in a project's source code, I often find myself wasting time examining lines that have been commented out. it would be useful to offer an option to return only lines that are not commented out, so as not to confuse the results.

                      167 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…)
                        8 comments  ·  Editor  ·  Flag idea as inappropriate…  ·  Admin →
                      • Implement indexed full-text search of source code, config files, and project files

                        Visual Studio projects can contain hundreds and even thousands of documents. Searching through these documents using Find-In-Files is slow and error prone. About a decade of academic research strongly suggests that an information retrieval approach to searching source code would be faster and provide better results.

                        While the Visual Studio team has noticed the need for better search tools, as evidenced by their recent "Search Everywhere" blog (see http://blogs.msdn.com/b/visualstudio/archive/2011/10/11/visual-studio-11-developer-preview-search-everywhere.aspx). Unfortunately, every recently introduced search tool still relies on regular-expressions or simple pattern-matching. To put this in context, the modern IDE uses search technology essentially identical to grep, which was…

                        166 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…)
                          4 comments  ·  Visual Studio Ultimate  ·  Flag idea as inappropriate…  ·  Admin →
                        • Save default project(s) in the .sln file

                          As per http://stackoverflow.com/questions/694730/why-is-set-as-startup-option-stored-in-the-sou-file-and-not-the-sln-file/1808264#1808264 , store the Startup Project(s) selected in the IDE in the .sln file, but allow them to be overridden by Startup Project(s) stored in the .suo file.

                          166 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…)
                            12 comments  ·  Project  ·  Flag idea as inappropriate…  ·  Admin →
                          • Add ability to set wildcard into the reference path

                            Add ability to set wildcard into the reference path.
                            For example:
                            When I want to add all files from the subdirectory /path/to/files I must add files separately:
                            /// <reference path="../path/to/files/file1.js" />
                            /// <reference path="../path/to/files/file2.js" />
                            /// <reference path="../path/to/files/file3.js" />
                            ...

                            It will be more usefull if I have ability to setup references through wildcard:
                            /// <reference path="../path/to/files/*.js" />
                            or more widely:
                            /// <reference path="../path/to/*/*" />

                            166 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…)
                              under review  ·  1 comment  ·  Languages - JavaScript  ·  Flag idea as inappropriate…  ·  Admin →
                            • Create migration tooling for TFS

                              As a ALM Consulting I need good migration tooling so that I can push data from one TFS server to another.

                              The idea would be to create solid open source tooling that really supports consultants in the field. The TFS Integration Tools are too often a sledge hammer when a scalpel will do and the lack of investment is making them more and more irrelevant. We need to have simple tooling to move work between TFS servers, Collections, and Team Projects which is not currently supported scenarios in the Integration Tools.

                              164 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…)
                                6 comments  ·  Rangers Project  ·  Flag idea as inappropriate…  ·  Admin →
                              • Bring back DirectX to C#!!!!

                                DirectX should be brought back to C#/VB.Net - it was such a good and powerful tool and since it has been scrapped I found it very difficult to develop any form of sound system software! DirectX or at least a better alternative!

                                163 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…)
                                  8 comments  ·  Languages - C#  ·  Flag idea as inappropriate…  ·  Admin →
                                • Decouple C++ compiler releases from Visual Studio releases

                                  In VS2010 and subsequently in VS2010sp1, many features of C++11 was implemented. But it is still far from covering the full spec. And we can assume that the full spec will not be available even in VS2011(or v.next). Because, MS is polling developers for prioritizing certain features of C++11. May it will take some time to have a fully supported C++11 with VS. And that is true for almost all the C++ implementations. And probably, the C++ compiler supplied with VS v.next will not be usable with VS2010.

                                  We can see, C++ compiler releases(full version or service packs) are coupled…

                                  163 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…)
                                    5 comments  ·  Languages - C++  ·  Flag idea as inappropriate…  ·  Admin →
                                  • Bring the subtle Office 2013 smooth scrolling/typing to Visual Studio 2012

                                    Warning, this suggestion might be frowned upon.

                                    In the recently announced Office 2013, one of the nicer features is the subtle smooth scrolling and typing animations.

                                    I propose adding those features in Visual Studio 2012, as an option, of course, so people could turn it on and off.

                                    163 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…)
                                      11 comments  ·  General  ·  Flag idea as inappropriate…  ·  Admin →
                                    • Allow delegates and generics to be used in attributes

                                      Alter section 17.1.3 of the C# language specification to allow for additional language features to be used in attributes. For example, being able to specify a delegate (anonymous or not) would allow one to look up a member-specific validation method using a static method:

                                      public static bool NameValidator(string name) {
                                      return !string.IsNullOrEmpty(name);
                                      }

                                      [StringValidation(NameValidator)]
                                      public string Name { get; set; }

                                      One better would be to allow anonymous delegates or lambda expressions:

                                      [StringValidation(str => !string.IsNullOrEmpty(str))]
                                      public string Name { get; set; }

                                      Better yet would be to allow for generics in attributes:

                                      [Validation<string>(str => !string.IsNullOrEmpty(str))]
                                      public string Name { get;…

                                      161 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…)
                                        8 comments  ·  Languages - C#  ·  Flag idea as inappropriate…  ·  Admin →
                                      • Automatically handle thread dispatching when binding to ObservableCollection.

                                        If you use MVVM today you have to wrap your collection to handle dispatching, which makes it much more difficult to have pure view-models.

                                        161 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  ·  Windows Presentation Foundation  ·  Flag idea as inappropriate…  ·  Admin →
                                        • Add more garbage collector options including a low latency option and an option tuned for immutable data structures

                                          GC latency in .NET 4 is orders of magnitude worse than competitors like Staccato (2008). Performance when using immutable data structures is several times worse than alternatives like OCaml (1995).

                                          161 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…)
                                            5 comments  ·  .NET  ·  Flag idea as inappropriate…  ·  Admin →
                                          • Don't see your idea?

                                          Feedback and Knowledge Base