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

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 typeof() optional when possible

    DependencyProperty.RegisterReadOnly("View", typeof(ICollectionView), typeof(CollectionViewSource), new FrameworkPropertyMetadata((ICollectionView)null));

    Imagine replacing previous piece of C# code with following:

    DependencyProperty.RegisterReadOnly("View", ICollectionView, CollectionViewSource, new FrameworkPropertyMetadata((ICollectionView)null));

    As far as I can see there is little chance for confusion here, as compiler knows that a type is expected here and type name can be provided directly, without typeof() operator. A confusion might happen if there is a variable/property with the same name as the type, in this case compiler might require disambiguation.

    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 more sample text and explanation to colors/fonts customization

      Currently, customizing colors and fonts has only one sample text, "ij = I::oO(0xB81l);". When changing colors or fonts, this text is updated. Unfortunately, the text rarely reflects the type of display item being changed.

      Also, what's the difference between "User Types - Interfaces" and "User Types (Interfaces)"? There are lots of display items whose names are at best vague and usually are not descriptive of to what they refer.

      My suggestion is: in the dialog where colors and fonts are updated:

      1) The sample text should directly reflect what is being changed and not be a static string that rarely…

      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  ·  User Interface  ·  Flag idea as inappropriate…  ·  Admin →
      • Why not a .NET hardware processor, where native code is the same bytecode?

        Is the superscalar processor the best platform for execute .NET?
        (considering that .NET CLR is a stack machine and superscalar processor is a machine based in registers)

        The short answer is: No

        Superscalar processor were designed for languages like C (based in registers), but CLR (the virtual machine of .NET) is a stack machine, so the paralellism at instruction level that brings superscalar processor is difficult to implement for stack machine (remember, operations on stack machine happen at the top of stack).

        For Java is the same story (because JVM is also a stack machine).
        Do you remember the idea…

        1 vote
        Vote
        Sign in
        Check!
        (thinking…)
        Reset
        or sign in with
        • facebook
        • google
          Password icon
          I agree to the terms of service
          Signed in as (Sign out)
          You have left! (?) (thinking…)
          0 comments  ·  .NET  ·  Flag idea as inappropriate…  ·  Admin →
        • Why not an official Microsoft versión of .NET for Linux?

          Why not an official Microsoft implementation of .NET on Linux and other flavors of Unix?

          The success of Java is just its presence in multitude of platforms, but .NET is much more rich for the front-end side.

          With cloud computing, in the future the Operating System and DBMS will be only a commodity. both will be less important because they will be managed by the cloud provider.

          For the future, we need platform independence for interoperate into a multi-cloud ecosystem.

          At the end of the day, Unix is not a strange world for Microsoft, remember Xenix.

          1 vote
          Vote
          Sign in
          Check!
          (thinking…)
          Reset
          or sign in with
          • facebook
          • google
            Password icon
            I agree to the terms of service
            Signed in as (Sign out)
            You have left! (?) (thinking…)
            0 comments  ·  .NET  ·  Flag idea as inappropriate…  ·  Admin →
          • Remove extension restrictions from Visual Studio Express edition

            Remove extension restrictions from Visual Studio Express edition.
            This is what you get when you try to install an extension in Visual Studio Express

            3/7/2014 11:37:52 AM - Microsoft VSIX Installer
            3/7/2014 11:37:52 AM - -------------------------------------------
            3/7/2014 11:37:53 AM - Initializing Install...
            3/7/2014 11:37:53 AM - Extension Details...
            3/7/2014 11:37:53 AM - Identifier : FSharpVSPowerTools.68b42cfe-c752-4094-8dba-ed48aa81cac8
            3/7/2014 11:37:53 AM - Name : F# Power Tools
            3/7/2014 11:37:53 AM - Author : fsharp.org
            3/7/2014 11:37:53 AM - Version : 0.3.2
            3/7/2014 11:37:53 AM - Description : A colllection of additional commands for F# in Visual Studio
            3/7/2014 11:37:53 AM - Locale :…

            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  ·  Extension  ·  Flag idea as inappropriate…  ·  Admin →
            • Allow deploying to source control \Drops for TFS+Git projects

              After taking much time to migrate my TFS projects from TFSVC to Git I am shocked and disappointed that I can no longer configure a build to deploy to $/Drops after it's completed.

              Please add this ability to TFS + Git projects!

              2 votes
              Vote
              Sign in
              Check!
              (thinking…)
              Reset
              or sign in with
              • facebook
              • google
                Password icon
                I agree to the terms of service
                Signed in as (Sign out)
                You have left! (?) (thinking…)
                1 comment  ·  Cloud  ·  Flag idea as inappropriate…  ·  Admin →
              • Show the file size in the Properties window when files are selected in Solution Explorer

                It would be helpful to know how big (in bytes/kilobytes) each file is without having to go to Windows File Explorer, especially for asset files (images, stylesheets etc.).

                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  ·  Flag idea as inappropriate…  ·  Admin →
                • Expand the functionality of the "reassign" approval tool

                  The "Reassign" tool is currently very limited -- you can reassign an approval to anyone, regardless of their suitability to actually perform an approval for a step/stage, and this cannot be disabled. This has the potential to lead to things being inappropriately reassigned and getting a release into a "stuck" state.

                  The tool should be redesigned so that you can define, for a given step, which group(s)/users are valid reassignment targets. If no potential reassignment targets are defined, then you should not be able to reassign an approval.

                  7 votes
                  Vote
                  Sign in
                  Check!
                  (thinking…)
                  Reset
                  or sign in with
                  • facebook
                  • google
                    Password icon
                    I agree to the terms of service
                    Signed in as (Sign out)
                    You have left! (?) (thinking…)
                    0 comments  ·  Release Management  ·  Flag idea as inappropriate…  ·  Admin →
                  • Debug-time user defined assembly import/injection with "source weaving" through user defined keyword

                    When debugging C#, it would be handy to be able to have your own assembly with "debugging-aids" available without needing to change projects or the source code.

                    implementation and use from end user perspective:

                    1. Create "Tools" project, to which you can add functions that can be called from any of your projects without changing them, these functions are behind user-definable keyword. eg. The key left of "1" is "§". After defining "§" as the keyword and creating a BP() function, I can add §BP or §BP() into code or into disassembly, but it won't be added into the files…

                    2 votes
                    Vote
                    Sign in
                    Check!
                    (thinking…)
                    Reset
                    or sign in with
                    • facebook
                    • google
                      Password icon
                      I agree to the terms of service
                      Signed in as (Sign out)
                      You have left! (?) (thinking…)
                      0 comments  ·  Debugger  ·  Flag idea as inappropriate…  ·  Admin →
                    • allow http connection to remote IIS instead of ftp in VS Express Web

                      Front Page Extensions is the only way to have an http connection to a remote IIS now, and Front Page extensions is not supported by Microsoft. So, there should be an alternative like WebDAV to support editing web sites on a remote IIS server.

                      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  ·  Extension  ·  Flag idea as inappropriate…  ·  Admin →
                      • Edit & continue: Support editing embedded resources

                        I would like to do edit & continue on embedded resources, such that when I edit an embedded resource while debugging is paused, that when I continue debugging, the new resource is read when I call Assembly.GetManifestResourceStream.

                        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  ·  Debugger  ·  Flag idea as inappropriate…  ·  Admin →
                        • Buffer.Compare

                          Buffer.Compare(Array src, int srcOffset, Array dst, int dstOffset, int count)

                          Works like memcmp, returns 0 if equal, etc.

                          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 →
                          • Add methods for typed field capture by parsing strings

                            Like string.Format is to snprintf, I would like a comparable tool to sscanf to be a basic part of the framework.

                            One way to do this would be as follows.

                            someInputString.Capture("%%:%%:%%", out int hours, out int minutes, out int seconds) for basic greedy parse (the double percent symbols here don't indicate 2 digits, they just indicate a capture with no capture format specifier.

                            someInputString.RegexCapture(regexNotationString, out int hours, out in minutes, out int seconds) for more complicated scenarios.

                            Since these functions have an arbitrary number of outputs of any combination of parseable types they are very difficult to implement without runtime…

                            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 →
                            • to transform the program Excel into the simple and powerful programming language.

                              We need to have two different windows in "Excellent" programming language: one -for the program (functions), and the original data. Other window - as the "output screen", where the result of calculation is shown. Now data and calculated functions are shown all together in the one window in Excel table. Also we need to add 3 functions - corresponding to operators [for], [while] and [goto]. Later we can try to add operator "call subroutine NAME", that prepares data in the especial additional table named NAME. So, we see now two products:
                              1) usual calculator (and program for Windows too) It…

                              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 - Visual Basic  ·  Flag idea as inappropriate…  ·  Admin →
                              • Enhance the open files dropdown list with button for remove

                                Hi,

                                I know this might be a small thing but it keeps coming to my head.
                                I would like to suggest you to add a close button for the open files in the dropdownlist. Please see attached img.

                                Thanks,
                                Corina

                                9 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 →
                                • Team Foundation Server integration platform for 2013

                                  TFS Intergration platform support for migrating 2008 to 2013.

                                  I nee a way to transfer source code and workitems from TFS 2008 to TFS 2013.

                                  Does the TFS Intergration platform support this? If not, when will it?

                                  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  ·  Team Foundation Server  ·  Flag idea as inappropriate…  ·  Admin →
                                  • Visual Studio Online Extensions

                                    Please add the option for visual studio online to import/add extensions like the task board enhancer so that we won't be punished to use visual studio online instead of a local installation of tfs2013
                                    http://pascoal.net/task-board-enhancer/

                                    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  ·  Team Foundation Server  ·  Flag idea as inappropriate…  ·  Admin →
                                    • Datatype date should be available

                                      There should be a datatype "Date" additional to existing datatype datetime.

                                      9 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 →
                                      • "Publish Web" (Web Deploy / msdeploy.exe) should use my systems default proxy settings

                                        I currently cannot use Web Deploy because it ignores my proxy server settings, and there seems to be no way to specify a proxy server for web deploy to use.

                                        Web access in our company is required to use a proxy server, otherwise our firewall will block the traffic.

                                        Alternate publish methods like FTP are also problematic to use, because our IT blocks FTP by default. I have to ask them for every single IP address that I want to access via FTP. IP adresses for azure VMs might change at any time, so this is not really an option.

                                        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  ·  Cloud  ·  Flag idea as inappropriate…  ·  Admin →
                                        • Show variable contents interleaved into the code during debug step-through

                                          Show variable contents interleaved into the code during debug step-through.

                                          text editor when not debugging:
                                          line 4. line of code with int variable i1 and string s1;
                                          line 5. line of code with int variable i2 and string s2;

                                          text editor while debugger paused at line 4:
                                          line 4. line of code with int variable i1 and string s1;
                                          line "4.5": i1= 123 s1="bla bla bla...(truncated if too long");
                                          line 5. line of code with int variable i2 and string s2;

                                          Optionally interleave all things in local and global scope into all lines by pressing some toggle key.

                                          The variable…

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

                                          Feedback and Knowledge Base