Visual Studio 2015

Welcome to the Visual Studio 2015 UserVoice site. This site is for suggestions and ideas for the IDE of Visual Studio (Community, Professional or Enterprise). You can also add suggestions for Team Services or Visual Studio Code. Or go to Connect to file a bug.

We also added an Announcements section where we will be posting special opportunities for you to participate in.

Read about current UserVoice statuses and their definitions in our article “What Does the Status of My Feedback Mean?” article.

We look forward to hearing from you!

The Visual Studio team
Terms of Service and Privacy Policy

I suggest you ...

You've used all your votes and won't be able to post a new idea, but you can still search and comment on existing ideas.

There are two ways to get more votes:

  • When an admin closes an idea you've voted on, you'll get your votes back from that idea.
  • You can remove your votes from an open idea you support.
  • To see ideas you have already voted on, select the "My feedback" filter and select "My open ideas".
(thinking…)

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

If a similar idea already exists, you can support and comment on it.

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

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

  • Hot ideas
  • Top ideas
  • New ideas
  • My feedback
  1. Add in support for Enum and Delegate constraints

    Currently C# disallows constraints for
    System.Enum,
    System.ValueType,
    System.Delegate,
    System.Array,
    System.Object

    However, the CLR has support for classes constrained to All 5 types.
    It could be very useful to have this constrain.
    To constraint a method to enum we can just use:
    where T:struct,Enum
    Allowing us to specify only to be called on enum instances and not those boxed as Enum.

    Delegate is less strict unfortunately, as there is no way to specify that a T must be an inheritor of a class. A simple solution would be to add an interface to Delegate like `IDelegate` so that we can easily…

    158 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 →
    • Add PHP to Visual Studio

      Even dough PHP is not a Microsoft Language, The IDE could be working for it and generating Microsoft an Income.

      157 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…)
        13 comments  ·  Flag idea as inappropriate…  ·  Admin →
      • allow Windows phone apps to be created on Windows 7

        Some developers don't want to upgrade to Windows 8 just to develop for Windows phone. If they won't upgrade then Windows phone won't get as many new apps. Please allow the new Windows Phone SDK to work on Windows 7 so its easier for the developers to create apps.

        156 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  ·  Flag idea as inappropriate…  ·  Admin →
        • 156 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  ·  Languages - F# Tools  ·  Flag idea as inappropriate…  ·  Admin →
          • Make Entity Framework Designer support Synonyms

            Entity Framework will happily support Synonyms in Code First, and if you can manage to merge two edmx files, you can make it work as well (see http://rachel53461.wordpress.com/2011/05/22/tricking-ef-to-span-multiple-databases)

            All that is necessary is to add a "Synonyms" item in the Update Model from Database dialog. Of course this would also require that Synonyms be loaded into the SSDL so they can be mapped.

            This would allow cross-database queries and execution without having to change Entity Framework at all. Of course true cross-database support would be ideal, but I see this as an effective compromise.

            155 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  ·  Flag idea as inappropriate…  ·  Admin →
            • Support XAML+Native Code for desktop applications

              Metro app developers got the gift of the ability to combine XAML with native code. Desktop developers (well, at least me) have wanted this for years and probably didn't ask because we figured there was no chance. Now developers of these little toy apps get this ability! This is a travesty. Desktop application developers need a modern framework (MFC is older than the internet, WPF is dead), and it should be native code (.NET is too slow). So please port the ability to use XAML and native code together over to the Win32 development platform.

              155 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…)
                10 comments  ·  Languages - C++  ·  Flag idea as inappropriate…  ·  Admin →
              • Extend the Visual Studio Online Project Portal with SharePoint functionality

                Regarding Visual Studio Online:

                Please make it possible to extend the Visual Studio Online Project Portal with SharePoint functionality so the team could enjoy its collaboration and document management features.

                153 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  ·  Flag idea as inappropriate…  ·  Admin →
                • Provide a WPF PropertyGrid control

                  Provide a WPF-native version of the PropertyGrid control as a standard control. The PropertyGrid is currently only available as a Windows Forms control. Visual Studio now has a WPF PropertyGrid within it and it would be nice if developers could use that control, out of the box.

                  153 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 →
                  • Bring back the Visual Studio Achievements extension.

                    Greetings,

                    For Visual Studio 2010 and Visual Studio 2012 is the achievements extension released. For those who are not familiar with it, I added the links to them below.

                    Sadly is this extensions nowhere to be found for Visual Studio 2013. It's not a killing extensions but it sure adds a lot of fun between developers in a company or for students on Facebook. I personally think that it is improving the working environment.

                    It would be nice to have this extensions continued or open sourced so the community can work on it.

                    Extension for 2010: http://visualstudiogallery.msdn.microsoft.com/ed9e23e2-ff50-43e3-9aa6-c91f27bd6a6d
                    Extension for 2012: …

                    150 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  ·  Extensibility  ·  Flag idea as inappropriate…  ·  Admin →
                    • Add a PathGradientBrush (like in WinForms)

                      This brush helps simplyfing some effects

                      149 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 →
                      • odata v4

                        upgrade Lightswitch OData to v4

                        146 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 →
                        • Allow to have custom delimiters in raw string literal

                          C++11 (and some others languages) allow you to define custom delimiters for litterals string. It allows you to copy and paste xml, html , ... easily in you code without have to double " .
                          For inst(taken from wikipedia on c++11)

                          R"(The String Data \ Stuff " )"
                          R"delimiter(The String Data \ Stuff " )delimiter"

                          146 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  ·  Languages - C#  ·  Flag idea as inappropriate…  ·  Admin →
                          • Support more than one .NET language within a project

                            I would like to use C# or VB.NET along side F# within the same project without being forced to place that code in it's own project. The language of each code file would be determined by it's file extension as it is now. They all compile to IL, so it shouldn't be a problem to link them all together into one DLL.

                            For backwards compatibility with existing .csproj, .vbproj and .fsproj files, there would probably need to be a new project format -- something like .netproj that would support multiple language code files.

                            145 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…)
                              13 comments  ·  Project  ·  Flag idea as inappropriate…  ·  Admin →
                            • C# Script window similar to LinqPad

                              I want to be able to write scripts to try out things that I would normally create a console application for. It should be really easy to reference projects from the solution that I have currently open and all editor features should be enabled, such as refactoring and intelisense.

                              Ideally after I have written code in a script I would then be able to easily move it into one of my projects.

                              144 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  ·  Languages - C#  ·  Flag idea as inappropriate…  ·  Admin →
                              • Support for immutable objects

                                Use some ideas of F# for C#. For instance, it would be very nice to have support for immutable objects, like immutable lists etc. with low costs for list changes. Also, a keyword to declare a class explicit as immutable would be helpful.

                                144 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  ·  Languages - C#  ·  Flag idea as inappropriate…  ·  Admin →
                                • Implement interfaces for you objects so we don't have use SystemWrapper.codeplex.com

                                  In order to Unit Test and mock things like Registry and File System, we have to create an interface and then wrap your code because your .NET code in the System Namespace doesn't already have an interface.

                                  See http://systemwrapper.codeplex.com

                                  If you added the interfaces from systemwrapper.codeplex.com to .NET and then made your objects implement the interfaces, then we could mock things like Registry, File IO, DirectoryEntry, etc., without having to write our own interface and a wrapper.

                                  143 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  ·  Languages - C#  ·  Flag idea as inappropriate…  ·  Admin →
                                  • XAML refactoring, especially for Rename of properties for Databinding

                                    Currently renaming a property that is databound does NOT rename the binding in the XAML, or the string in the notify property change.

                                    Ex: Currently, When you change MyInt to be something else

                                    Backing ViewModel.cs:

                                    int _myInt;

                                    public int MyInt // Changes
                                    {
                                    get { return _myInt; }
                                    set
                                    {
                                    if (_myInt != value)
                                    {
                                    _myInt = value;
                                    if(PropertyChanged != null)
                                    {
                                    PropertyChanged(this, new PropertyChangedEventArgs("MyInt")); /this String does not change
                                    }
                                    }
                                    }
                                    }

                                    SomeXaml.xaml:
                                    <TextBlock Text={Binding MyInt}/> <!-- This MyInt also does not currently update -->

                                    <!-- Other references in Xaml to MyInt also do not change -->

                                    143 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  ·  XAML Tools  ·  Flag idea as inappropriate…  ·  Admin →
                                    • Add support for Java style "throws" keyword

                                      In Java, "throws" keyword is used in method signatures, informing about the exceptions may arise from this method.

                                      public void ReadFile() throws IOException, FileNotFoundException { ... }

                                      When developer use this method, Java compiler forces the developer to implement an exception handling strategy, surrounding this method with try-catch, or adding these exceptions to the new method's signature..

                                      public void UseReadFile()
                                      {
                                      try {
                                      ReadFile();
                                      }
                                      catch(IOException ioex)
                                      { ... }
                                      catch(FileNotFoundException fnfex)
                                      { ... }
                                      }

                                      public void UseReadFile throws IOException, FileNotFoundException
                                      {
                                      ReadFile();
                                      }

                                      142 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…)
                                        41 comments  ·  Languages - C#  ·  Flag idea as inappropriate…  ·  Admin →
                                      • Caller Info attribute [CallerMemberNamespace]

                                        Just have seen the "Future Directions for C#" video.

                                        The Caller Info attributes

                                        [CallerFilePaht]
                                        [CallerLineNumer]
                                        [CallerMemberName]

                                        are very helpful, but missing the

                                        [CallerMemberNamespace]

                                        attribute.

                                        142 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 →
                                        • Make source code (text) editor faster

                                          With a lot of extensions installed, the source code editor can really slow down on some older systems. Scrolling isn't smooth, and typed text can have big delays in showing up.

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

                                          Feedback and Knowledge Base