Visual Studio IDE

Announcement: Last fall, we migrated this forum to Visual Studio Developer Community to provide you one convenient and responsive system for all feedback. As the final step in the migration, this forum will be closed off completely on June 1st, 2019. We encourage you to visit Visual Studio Developer Community where you can now suggest new ideas, browse and vote on existing ideas, and engage with Visual Studio teams.

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
    (thinking…)
    Sign in with: facebook google
    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…

  2. 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
    (thinking…)
    Sign in with: facebook google
    Signed in as (Sign out)
    You have left! (?) (thinking…)
    8 comments  ·  Languages - Visual Basic  ·  Flag idea as inappropriate…  ·  Admin →
  3. 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
    (thinking…)
    Sign in with: facebook google
    Signed in as (Sign out)
    You have left! (?) (thinking…)
    5 comments  ·  Languages - Visual Basic  ·  Flag idea as inappropriate…  ·  Admin →
  4. 75 votes
    Vote
    Sign in
    (thinking…)
    Sign in with: facebook google
    Signed in as (Sign out)
    You have left! (?) (thinking…)
    completed  ·  2 comments  ·  Languages - Visual Basic  ·  Flag idea as inappropriate…  ·  Admin →
  5. 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
    (thinking…)
    Sign in with: facebook google
    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

  6. 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
    (thinking…)
    Sign in with: facebook google
    Signed in as (Sign out)
    You have left! (?) (thinking…)
    12 comments  ·  Languages - Visual Basic  ·  Flag idea as inappropriate…  ·  Admin →
  7. 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
    (thinking…)
    Sign in with: facebook google
    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

  8. 23 votes
    Vote
    Sign in
    (thinking…)
    Sign in with: facebook google
    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…

  9. 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
    (thinking…)
    Sign in with: facebook google
    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.…

  10. 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
    (thinking…)
    Sign in with: facebook google
    Signed in as (Sign out)
    You have left! (?) (thinking…)
    1 comment  ·  Languages - Visual Basic  ·  Flag idea as inappropriate…  ·  Admin →
  11. 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
    (thinking…)
    Sign in with: facebook google
    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

  12. 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
    (thinking…)
    Sign in with: facebook google
    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

  13. 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
    (thinking…)
    Sign in with: facebook google
    Signed in as (Sign out)
    You have left! (?) (thinking…)
    0 comments  ·  Languages - Visual Basic  ·  Flag idea as inappropriate…  ·  Admin →
  14. 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
    (thinking…)
    Sign in with: facebook google
    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

  15. 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
    (thinking…)
    Sign in with: facebook google
    Signed in as (Sign out)
    You have left! (?) (thinking…)
    completed  ·  2 comments  ·  Languages - Visual Basic  ·  Flag idea as inappropriate…  ·  Admin →
  16. 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
    (thinking…)
    Sign in with: facebook google
    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…

  17. 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
    (thinking…)
    Sign in with: facebook google
    Signed in as (Sign out)
    You have left! (?) (thinking…)
    2 comments  ·  Languages - Visual Basic  ·  Flag idea as inappropriate…  ·  Admin →
  18. 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
    (thinking…)
    Sign in with: facebook google
    Signed in as (Sign out)
    You have left! (?) (thinking…)
    1 comment  ·  Languages - Visual Basic  ·  Flag idea as inappropriate…  ·  Admin →
  19. 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
    (thinking…)
    Sign in with: facebook google
    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

  20. 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
    (thinking…)
    Sign in with: facebook google
    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