Visual Studio IDE

Announcement: This forum has been migrated to provide our customers one convenient and responsive system for all feedback. You can now suggest new ideas, browse and vote on existing ideas in the Visual Studio Developer Community. To learn more about the migration to Visual Studio Developer Community please check out the release blog post.

We’d like your suggestions and ideas to help us continuously improve future releases of Visual Studio, so we’ve partnered with UserVoice, a third-party service, to collect your feedback. Please do not send any novel or patentable ideas, copyrighted materials, samples or demos for which you do not want to grant a license to Microsoft.

This site is for feature suggestions; if you need to file a bug, you can visit our Developer Community website to get started.

Note: your use of the portal and your submission is subject to the UserVoice Terms of Service & Privacy Policy and license terms.

We look forward to hearing from you!
- The 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 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. Provide VB.NET Templates for developing Universal Apps

    As we all know, universal apps are the future in windows and apps market. Though, Universal Apps template is not available on Visual Studio 2013 Update 2 RC. So, please make it available as there are more developers in VB.NET than we think.

    489 votes
    Vote
    Sign in
    Check!
    (thinking…)
    Reset
    or sign in with
    • facebook
    • google
      Password icon
      Signed in as (Sign out)
      You have left! (?) (thinking…)
      33 comments  ·  Languages - Visual Basic  ·  Flag idea as inappropriate…  ·  Admin →

      As promised, the Windows 10 Developer Tools for Visual Studio 2015 have been released today including project templates and other tooling support for building applications targeting the Universal Windows Platform using the Visual Basic programming language. That means VB developers are equipped out of the gate to write great apps for Windows 10 – on desktops, laptops, tablets, on phones, HoloLens, Raspberry Pi, and Xbox One.

      This release takes Universal to a whole new level. Beyond merely sharing an identity and code between two applications with UWP you can write a single binary that can adaptively run anywhere running Windows 10. This is truly the experience that we originally envisioned last year and we’re thrilled to finally get it in your hands. And this adaptability is powered by a brand new technology also being introduced this release – .NET Native, which allows Visual Basic applications targeting UWP to be…

    • Implement support for binary, octal and hex literals

      I know VB supports hex literals but these need to be improved so instead of using the &h prefix, you could use a suffix:
      Dim hexValue = 1F7h

      The same way you could then implement both binary and octal literals:
      Dim binValue = 01100011b
      Dim octValue = 722o

      84 votes
      Vote
      Sign in
      Check!
      (thinking…)
      Reset
      or sign in with
      • facebook
      • google
        Password icon
        Signed in as (Sign out)
        You have left! (?) (thinking…)
        8 comments  ·  Languages - Visual Basic  ·  Flag idea as inappropriate…  ·  Admin →
      • Add VB.Net Project Templates For .Net Core and .Net Standard to Visual Studio 2017

        It's absurd that VS 2017 lacks VB.Net project templates for KEY new concepts such as .Net Core and .Net Standard.

        Microsoft has promised to maintain VB.Net as a first class citizen/language, but in the last year or two, I've seen exactly the opposite.
        I'm fearful that perhaps VB.Net isn't getting even the most basic levels of internal Microsoft use and testing with new concepts if there aren't even project templates in your flagship dev tool.

        I suggest either dropping VB.Net completely or committing the resources necessary to properly maintain and support it. Everything about the current half-measures is quite uncomfortable…

        76 votes
        Vote
        Sign in
        Check!
        (thinking…)
        Reset
        or sign in with
        • facebook
        • google
          Password icon
          Signed in as (Sign out)
          You have left! (?) (thinking…)
          5 comments  ·  Languages - Visual Basic  ·  Flag idea as inappropriate…  ·  Admin →
        • 75 votes
          Vote
          Sign in
          Check!
          (thinking…)
          Reset
          or sign in with
          • facebook
          • google
            Password icon
            Signed in as (Sign out)
            You have left! (?) (thinking…)
            completed  ·  2 comments  ·  Languages - Visual Basic  ·  Flag idea as inappropriate…  ·  Admin →
          • convert single line if statement to multi line if statement

            This is a minor but irritating issue.

            Suppose that I have the following line of code:

            If someValue = True Then DoSomething()

            and I need to change it to:

            If someValue Then
            DoSomething()
            DoSomethingElse()
            End If

            Then I insert the cursor after the 'Then' and press 'enter' resulting in:

            If someValue = True Then
            <Cursor Here>
            End IF
            DoSomething()

            I think that it would generally be more useful if the editor could do this instead:

            If someValue = True Then
            DoSomething()
            <Cursor Here>
            End IF

            57 votes
            Vote
            Sign in
            Check!
            (thinking…)
            Reset
            or sign in with
            • facebook
            • google
              Password icon
              Signed in as (Sign out)
              You have left! (?) (thinking…)
              1 comment  ·  Languages - Visual Basic  ·  Flag idea as inappropriate…  ·  Admin →

              Hey everyone,

              If you hadn’t heard already last week at BUILD we announced the PUBLIC release of a Preview of the next version of the Visual Basic language and code editing experience powered by “Roslyn”. You can download this preview and install it on top of Visual Studio 2013 today!

              I’m thrilled to say that we’ve taken this suggestion to heart and in the preview you can see for yourself.

              Download the End User Preview @ http://msdn.microsoft.com/en-US/vstudio/roslyn

              I encourage you all to download it, try it out, and send us your feedback.

              Regards,

              Anthony D. Green, Program Manager, Visual Basic & C# Languages Team

            • Remove, increase, or provide the option to customize the 100 Error/Warning limit for the VBC

              I think it would be great if this limitation was either removed or made configurable by the user. We recently underwent a conversion from VB6 to VB.NET and the limitation in errors made it difficult to correctly analyze the work needed to meet deadlines.

              44 votes
              Vote
              Sign in
              Check!
              (thinking…)
              Reset
              or sign in with
              • facebook
              • google
                Password icon
                Signed in as (Sign out)
                You have left! (?) (thinking…)
                12 comments  ·  Languages - Visual Basic  ·  Flag idea as inappropriate…  ·  Admin →
              • Allow to remove all Unused imports from VB.Net Project?

                I wanna remove all unused Imports from all VB classes of all projects. I don't want to click "Remove and Sort Imports" for each class one by one. Please include the same. I hope this would be included in the next version of Visual Studio.

                Thanks,
                Vihang

                39 votes
                Vote
                Sign in
                Check!
                (thinking…)
                Reset
                or sign in with
                • facebook
                • google
                  Password icon
                  Signed in as (Sign out)
                  You have left! (?) (thinking…)
                  3 comments  ·  Languages - Visual Basic  ·  Flag idea as inappropriate…  ·  Admin →

                  Hi,

                  You’ll be happy to know that as of Visual Studio 2015 you can remove all unused imports from all files in a project or a solution at once. First, we report all unused import statements by fading them in the editor. If you place the editor caret on on you’ll see a light-bulb indicator on the right side letting you know that a code action is available. You can either click the light-bulb or open it with the Ctrl+. keyboard shortcut (previously used for smart-tags). If you highlight the “Remove Unnecessary Imports” command in the preview you’ll see you have the option of removing just that particular unused import statement or all unused import statements in that file, that project, or your entire solution. Enjoy!

                  Regards,

                  -Anthony D. Green, Program Manager, Visual Basic

                • 23 votes
                  Vote
                  Sign in
                  Check!
                  (thinking…)
                  Reset
                  or sign in with
                  • facebook
                  • google
                    Password icon
                    Signed in as (Sign out)
                    You have left! (?) (thinking…)
                    0 comments  ·  Languages - Visual Basic  ·  Flag idea as inappropriate…  ·  Admin →

                    Hey shimmy,

                    We added iterators to Visual Basic 2012, at the same time we added Async methods to both languages. The implementation of Async and Iterators is very similar which gave us a great opportunity to add them to the language. The syntax for VB iterators is as follows:

                    Iterator Function M() As IEnumerable(Of Integer)
                    Yield 1
                    Yield 2
                    End Function

                    VB also supports iterator lambdas as well so you can write:

                    Dim i = Iterator Function()
                    Yield 1
                    Yield 2
                    End Function

                    For Each x In i()
                    ’ …
                    Next

                    And also iterator properties:

                    ReadOnly Iterator Property P As IEnumerable(Of Integer)
                    Get
                    Yield 1
                    Yield 2
                    End Get
                    End Property

                    If you haven’t already, please try out these new features in Visual Studio 2012 or 2013.

                    Regards,

                    Anthony D. Green, Program Manager, Visual Basic & C# Languages Team

                    P.S. Apologies to you and the others who voted on this…

                  • Lowercase keywords

                    I suggest that VB provides the option to have lowercase keywords, or moves fully over to it. Almost no other language uses PascalCase on keywords, it looks odd these days.

                    22 votes
                    Vote
                    Sign in
                    Check!
                    (thinking…)
                    Reset
                    or sign in with
                    • facebook
                    • google
                      Password icon
                      Signed in as (Sign out)
                      You have left! (?) (thinking…)
                      0 comments  ·  Languages - Visual Basic  ·  Flag idea as inappropriate…  ·  Admin →

                      Hi Marc (and other supporters),

                      I also had a suspicion earlier this year that the PascalCased keywords in Visual Basic were contributing to its reputation as a “verbose” language. As you mentioned most modern popular languages use lowercase keywords so it’s understandable is readers familiar with those languages find VB jarring. Anyway, I conducted a little experiment to see what it would look like if we used lowercase keywords in VB and here’s what I came up with: A special font that you can download and install and configure Visual Studio to use that will force all keywords to display in lowercase. Mind you they only display lowercase, they’re still saved to disk in their normal casing. I talked about it on the VB team blog here: http://blogs.msdn.com/b/vbteam/archive/2015/04/02/lowercase-keywords-revisited.aspx

                      and you can download the font from my github repo here:
                      https://github.com/AnthonyDGreen/misc/releases/tag/v0.1-alpha

                      I’ve been using it ever since and I love it.…

                    • Add null-propagating member-access operator (?.) to VB.NET

                      I've heard a similar feature is possibly in the pipeline for C#, and would love to see it in VB.NET as well. I'd love to reduce:

                      If points IsNot Nothing Then
                      Dim next = points.FirstOrDefault
                      If next IsNot Nothing AndAlso next.X IsNot Nothing Then
                      Return next.X
                      End If
                      End If
                      Return -1

                      ...to:

                      Return If(points?.FirstOrDefault()?.X, -1)

                      18 votes
                      Vote
                      Sign in
                      Check!
                      (thinking…)
                      Reset
                      or sign in with
                      • facebook
                      • google
                        Password icon
                        Signed in as (Sign out)
                        You have left! (?) (thinking…)
                        1 comment  ·  Languages - Visual Basic  ·  Flag idea as inappropriate…  ·  Admin →
                      • Allow #Region in methods..

                        To complement comments by marking out that section the comment relates to.

                        Example

                        Public Sub MyMagicMethod()
                        #Region "Locally Scoped Variables."
                        #End Region
                        End Sub

                        Additionally this would also allow sections of the method to be code-folded.

                        18 votes
                        Vote
                        Sign in
                        Check!
                        (thinking…)
                        Reset
                        or sign in with
                        • facebook
                        • google
                          Password icon
                          Signed in as (Sign out)
                          You have left! (?) (thinking…)
                          11 comments  ·  Languages - Visual Basic  ·  Flag idea as inappropriate…  ·  Admin →

                          Hey everyone,

                          If you hadn’t heard already last week at BUILD we announced the PUBLIC release of a Preview of the next version of the Visual Basic language and code editing experience powered by “Roslyn”. You can download this preview and install it on top of Visual Studio 2013 today!

                          I’m excited to let you know that included in this is a preview of support for #Region inside of methods.

                          You can read about it and other cool new features here: http://www.codeplex.com/Download?ProjectName=roslyn&DownloadId=824695

                          Download the End User Preview @ http://msdn.microsoft.com/en-US/vstudio/roslyn

                          I encourage you all to download it, try it out, and send us your feedback.

                          Regards,

                          Anthony D. Green, Program Manager, Visual Basic & C# Languages Team

                        • Line continuation in strings

                          Would be great to have the equivalent of @" some string " in c# in order to do line continuation in VB without the cumbersome " & _.
                          That would be particularly useful when writing SQL Statements.
                          Something like:

                          SqlQry = @" SELECT
                          Col1,
                          Col2,
                          Col3
                          FROM TableName; "

                          15 votes
                          Vote
                          Sign in
                          Check!
                          (thinking…)
                          Reset
                          or sign in with
                          • facebook
                          • google
                            Password icon
                            Signed in as (Sign out)
                            You have left! (?) (thinking…)
                            8 comments  ·  Languages - Visual Basic  ·  Flag idea as inappropriate…  ·  Admin →

                            Hey everyone,

                            If you hadn’t heard already last week at BUILD we announced the PUBLIC release of a Preview of the next version of the Visual Basic language and code editing experience powered by “Roslyn”. You can download this preview and install it on top of Visual Studio 2013 today!

                            I’m excited to let you know that included in this is a preview of support for multiline string literals in Visual Basic:

                            Dim query =
                            SELECT
                            Col1,
                            Col2
                            FROM Table
                            WHERE
                            Col1 = Col2”

                            You can read about it more here: http://www.codeplex.com/Download?ProjectName=roslyn&DownloadId=824695

                            Download the End User Preview @ http://msdn.microsoft.com/en-US/vstudio/roslyn

                            I encourage you all to download it, try it out, and send us your feedback.

                            Regards,

                            Anthony D. Green, Program Manager, Visual Basic & C# Languages Team

                          • Make 'References' node visible in VB projects in Solution Explorer (like C#)

                            In C#, references are visible in Solution Explorer/Navigator. In VB you have to hide invisibles to achieve this.

                            14 votes
                            Vote
                            Sign in
                            Check!
                            (thinking…)
                            Reset
                            or sign in with
                            • facebook
                            • google
                              Password icon
                              Signed in as (Sign out)
                              You have left! (?) (thinking…)
                              0 comments  ·  Languages - Visual Basic  ·  Flag idea as inappropriate…  ·  Admin →
                            • to make a TypeOf...IsNot expression useable instead of Not TypeOf...Is

                              TypeOf...IsNot is more readable than the "awkward syntax" Not TypeOf...Is

                              11 votes
                              Vote
                              Sign in
                              Check!
                              (thinking…)
                              Reset
                              or sign in with
                              • facebook
                              • google
                                Password icon
                                Signed in as (Sign out)
                                You have left! (?) (thinking…)
                                0 comments  ·  Languages - Visual Basic  ·  Flag idea as inappropriate…  ·  Admin →

                                Hey Barthafe,

                                Great suggestion! This inconsistency has long plagued us since the introduction of the IsNot operator in VB2005.

                                While we do not currently have plans to implement this feature in the next release of Visual Studio, we have fixed it in Roslyn, which is our long-lead effort to rebuild the VB and C# compilers and editing experiences from the ground up. When Roslyn eventually becomes part of Visual Studio, you should see full support for TypeOf … IsNot … expressions. We have not determined when that will be, but it is on our roadmap.

                                Though you can’t see the fix yet, and it won’t be in the next release, I’m closing this suggestion as completed to free up your votes to put toward other suggestions.

                                Thanks again,

                                Anthony D. Green, Program Manager, Visual Basic & C# Languages

                              • Implement yield return/break equivalents

                                The ability to build 'on demand' IEnumerable collections allows C# programmers to do lots of cool stuff, most importantly improving performance and scalability of iterators where not all available data needs to be consumed. Meanwhile, VB.NET programmers have been left to pre-fill their entire collections since .NET 2.0. Please finally implement feature parity here...

                                6 votes
                                Vote
                                Sign in
                                Check!
                                (thinking…)
                                Reset
                                or sign in with
                                • facebook
                                • google
                                  Password icon
                                  Signed in as (Sign out)
                                  You have left! (?) (thinking…)
                                  completed  ·  2 comments  ·  Languages - Visual Basic  ·  Flag idea as inappropriate…  ·  Admin →
                                • VB.NET Refactoring

                                  It 'll be nice if you can add all the refactoring options that we have seen in C#

                                  6 votes
                                  Vote
                                  Sign in
                                  Check!
                                  (thinking…)
                                  Reset
                                  or sign in with
                                  • facebook
                                  • google
                                    Password icon
                                    Signed in as (Sign out)
                                    You have left! (?) (thinking…)
                                    1 comment  ·  Languages - Visual Basic  ·  Flag idea as inappropriate…  ·  Admin →

                                    Hey everyone,

                                    If you hadn’t heard already last week at BUILD we announced the PUBLIC release of a Preview of the next version of the Visual Basic language and code editing experience powered by “Roslyn”. You can download this preview and install it on top of Visual Studio 2013 today!

                                    I’m excited to let you know that included in this is a preview of several refactorings for VB. I’m pretty sure they’re the same for both languages since we implemented them at the same time but let us know if we missed anything!

                                    Download the End User Preview @ http://msdn.microsoft.com/en-US/vstudio/roslyn

                                    I encourage you all to download it, try it out, and send us your feedback.

                                    One more thing, not only can you check out the refactorings we’ve written in this preview but you can also download the SDK and write your own. No more will you be limited by what…

                                  • Include Visal Basic on .NET Native

                                    Please do not forget Visual Basic when making .NET Native! C# being the most popular language on Windows Store doesn't mean we must be forgotten. :(

                                    4 votes
                                    Vote
                                    Sign in
                                    Check!
                                    (thinking…)
                                    Reset
                                    or sign in with
                                    • facebook
                                    • google
                                      Password icon
                                      Signed in as (Sign out)
                                      You have left! (?) (thinking…)
                                      2 comments  ·  Languages - Visual Basic  ·  Flag idea as inappropriate…  ·  Admin →
                                    • XAML available for VB

                                      Add XAML available for VB! I cant changes my language to C++ or something like that... thats will very helpfull! Thankyou! :D

                                      3 votes
                                      Vote
                                      Sign in
                                      Check!
                                      (thinking…)
                                      Reset
                                      or sign in with
                                      • facebook
                                      • google
                                        Password icon
                                        Signed in as (Sign out)
                                        You have left! (?) (thinking…)
                                        1 comment  ·  Languages - Visual Basic  ·  Flag idea as inappropriate…  ·  Admin →
                                      • VB Interface Implementation - respecting the order of declaration

                                        When implementing an interface on a class, using VB.NET, the VS2010 and earlier IDE auto-generates the code based on the Interface.

                                        I would like to suggest to have the code generated respecting the order of declaration on the Interface. I usually declare Properties first, Events after and finally the methods. Its a pain having to reorganize my code every time I create a new class and implement an interface. This is specially problematic when we have interfaces with many members.

                                        To work around this issue I usually keep a sample of the interface implementation somewhere so I can just copy…

                                        3 votes
                                        Vote
                                        Sign in
                                        Check!
                                        (thinking…)
                                        Reset
                                        or sign in with
                                        • facebook
                                        • google
                                          Password icon
                                          Signed in as (Sign out)
                                          You have left! (?) (thinking…)
                                          0 comments  ·  Languages - Visual Basic  ·  Flag idea as inappropriate…  ·  Admin →

                                          Hey everyone,

                                          If you hadn’t heard already last week at BUILD we announced the PUBLIC release of a Preview of the next version of the Visual Basic language and code editing experience powered by “Roslyn”. You can download this preview and install it on top of Visual Studio 2013 today!

                                          I do believe the behavior of the implement interface command now matches your intuition. I tried it out quickly and the order of declaration had been respected.

                                          Also, for those of you who like very particular ordering of members you should also check out the .NET Compiler Platform (formerly known as “Roslyn”) SDK (this was the shortest name we were allowed to use, I swear) which allows you to write your own refactorings. So you could actually write a refactoring to reorder the members of any class to your specifications.

                                          Get the End User Preview and SDK @ http://msdn.microsoft.com/en-US/vstudio/roslyn

                                        • Type declaration in "for"

                                          When you writes:

                                          For Current% = 1 to 10

                                          The Current% is not a Declaration Integer Type, when option "Option Explicit" is on we need to do this:

                                          For Current as Integer = 1 to 10

                                          Or This:

                                          Dim Current%
                                          For Current = 1 to 10

                                          3 votes
                                          Vote
                                          Sign in
                                          Check!
                                          (thinking…)
                                          Reset
                                          or sign in with
                                          • facebook
                                          • google
                                            Password icon
                                            Signed in as (Sign out)
                                            You have left! (?) (thinking…)
                                            0 comments  ·  Languages - Visual Basic  ·  Flag idea as inappropriate…  ·  Admin →

                                            Hey Jesus,

                                            For all versions of VB including and after VB 2008, when type inference and LINQ were introduced, typing this:

                                            For i = 1 To 10

                                            Next

                                            Declares a new variable ‘i’ of type Integer, unless there is already a declared ‘i’ in scope of a different type. I use this feature pretty much daily. Note, that this will not work if you use Option Infer Off at the top of your file or set Option Infer Off in your project properties.

                                            Option Infer is what allows the compiler to infer the type of i (or in your case Current) from the type of the initializer 1 To 10. When Option Infer is On VB will implicitly declare i to be an Integer (since that’s what 1 is). If you’ve upgraded an existing VB2002, 2003, or 2005 project to 2008, 2010, or 2012 this may not be working for…

                                          ← Previous 1

                                          Feedback and Knowledge Base