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. 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 Right to Left Support to your WPF Applications

      currently WPF doesn't support RTL, please add it in your comming applications...

      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 full support for an implementation of quad precision IEEE 754-2008 data types

        Add additional data types that implement quad precision IEEE 754-2008 numbers

        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 "Name" property to Regex Group object

          The Group object from the Regex library needs a Name property. I am in a situation where I have regexes that are not known at compile time being run, and I need to create a Name-Value pair from the resulting matches. This is very difficult without a Name property.

          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 grid to print feature in your database application.

            i think it's time to add grid to print in your in your ide for database application. i am the programer in oranus novin co. we created a roubust and powerfull grid to print . with it your customer can easily create and customize many reports in a couple of minute.
            and your programers can add this great functionality with adding just a couple lines of code.
            you can gift your customers this great tool and save thousands of hours and days of programers all over the world
            thanks

            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  ·  .NET  ·  Flag idea as inappropriate…  ·  Admin →
            • windows service debugger

              Window Service Debugger

              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  ·  .NET  ·  Flag idea as inappropriate…  ·  Admin →
              • 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 →
                • include the SQL CE run time as part of the .net framework, instead of requiring a separate redistributable.

                  Many times it would be nice to provide simple local database functionality that is separated from much larger database instances. For these situations you need to get the latest version of the runtime and include it as yet another requirement for deployment across environment. Depending on the situation in which this is being suggested, the fact that it is not part of the .net framework can sometime be a limiting factor to its use.

                  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  ·  .NET  ·  Flag idea as inappropriate…  ·  Admin →
                  • Add factory method to NotifyCollectionChangedEventArgs

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

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

                    NotifyCollectionChangedEventArgs.CreateRemove(IList)
                    ...

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

                    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 →
                    • Implement an overload constructor for URI, which accepts two strings.

                      I find myself often writing something like this, when I'm working with URI's:

                      string host = "http://host.com/"; // Or some other host
                      string page = "folder/page.html"; // Or some other page - f.ex. a crawler
                      Uri targetUri = new Uri(new Uri(host), page);

                      This is because Uri doesn't have a constructor that takes two strings and does this for me. I'd like for URI to have a new constructor, which can take two strings, and basically do the above (or something smarter).

                      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 →
                      • DataGridView ColumnNames\(Name) intellisence

                        in datagridviews have the (Name) be loaded into intellisence

                        For example dgv.(name) in the following:
                        For Each row As DataGridViewRow In dgv.Rows
                        If (row.Cells(dgv.(name))) = "test" Then
                        row.(name2) = ""
                        End If
                        'MessageBox.Show(CStr(row.Cells(dgv.(name)).FormattedValue))
                        Next row

                        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 →
                        • Change GenericTypeParameterBuilder to override GetGenericParameterConstraints

                          There doesn't appear to be a way of retrieving the generic parameter constraints on a GenericTypeParmeterBuilder that you didn't create.

                          Please override GetGenericParameterConstraints to return the constraints.

                          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 →
                          • Disabling the container panel of a bunch of validators should also disable the validators

                            Setting enabled=false of a panel current sets child textboxes to enabled=false, but not validators. Would probably make sense to set enabled=false to ALL controls within a parent panel (if the panel is set to enabled=false).

                            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 →
                            • Provide an interface IParsable<T>

                              Provide an interface like

                              public interface IParsable<T>
                              {
                              T Parse(String)
                              Boolean TryParse(String, out T result)
                              }

                              so it is possible to write more generic parser logic.

                              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 →
                              • Targeting the .NET Framework 2.0 with Visual Studio 2010 without VS 2008

                                In order to build a c++ project with .Net 2.0 VS 2008 SP1 must be installed. It would be nice if that could be avoided.

                                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 →
                                • Insert up to date controls for creating state of the art windows ui

                                  The standard windows controls are very poor and most of them since NET 1.0 the same. For developing state of the art software developers must spend many time in creating user controls or buy 3rd party addons.

                                  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 →
                                  • Make Expressions implement Equals and GetHashCode

                                    Expressions Trees are immutable objects, which makes them excelent in many caching scenarios, except for one big detail: They don't implement Equals or GetHashCode().
                                    Considering the fact that they are immutable, I think it will be great if they implemented such methods, so they can easily be used as dictionary keys (for example).

                                    Also, this is more compiler specific, but I think that Expressions generated inside a method, without any reference to local variables, should be implemented as static readonly, always returning the same instance instead of generating a new instance each time. After all, the expression is immutable, so…

                                    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 a QueueUserWorkItem overload to ThreadPool that will be taking smth like IExecutable

                                      Currently QueueUserWorkItem and UnsafeQueueUserWorkItem allocate a small object on each queueing.
                                      Add an overload that will be taking IExecutable so that using ThreadPool won't add pressure on GC.

                                      IExecutable could look like this:

                                      interface IExecutable
                                      {
                                      void Execute();
                                      }

                                      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 changing wallpaper programmatically

                                        When I did some research about switching wallpapers programmatically on Windows 7, all posts said it's not possible right now because the API is not public.

                                        I would suggest to add API functionality to switch wallpapers / wallpaper collections programmatically and to change the interval a background is changed, best in a more or less platform independant manner (from Windows XP to Windows 7/8).

                                        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 →
                                        • Move Dispose call from caller to callee using yield

                                          When a function returns a disposable object, it is responsibility of caller to dispose it (in the examples DisposableObject is an object that implements IDisposable interface).

                                          DisposableObject DisposableObjectCreator()
                                          {
                                          return new DisposableObject();
                                          }

                                          void Caller()
                                          {
                                          using (var item = DisposableObjectCreator())
                                          {
                                          // ...
                                          }
                                          }

                                          Sometime I feel comfortable to move Dispose responsibility from caller to callee using yield.

                                          IEnumerable<DisposableObject> DisposableObjectCreator()
                                          {
                                          using (var obj = new DisposableObject())
                                          {
                                          yield return obj;
                                          }
                                          }

                                          void Caller()
                                          {
                                          foreach (var item in DisposableObjectCreator())
                                          {
                                          // ...
                                          }
                                          }


                                          Naturally, with this change the disposable object will be valid only into…

                                          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 →
                                          1 2 6 7 8 9 11 13 14 15 16 22 23
                                          • Don't see your idea?

                                          Feedback and Knowledge Base