Click here to Skip to main content
15,881,172 members
Please Sign up or sign in to vote.
1.00/5 (2 votes)
See more:
Hi there,

i am searching for an add-in / visual studio functionality, that will enlist all functions/subs/properties etc. for the current source file.

is there anything like that in the wide range of add-ins that will grant me this functionality?

Greetings from Germany :-)
Posted
Comments
Kenneth Haugland 26-Apr-13 7:46am    
Dont you already have that in VS? look at the dropdown menu right above your code?
0bsidian 26-Apr-13 8:26am    
Right, something just like that - just a little bit different :-) i want this functionality in a tab were the - let's say - toolbox sits.
Dave Kreskowiak 26-Apr-13 14:03pm    
I don't see how this would be useful at all. I'm currently working on a solution with 6 projects, about 150 classes, containing over 1000 methods. That list would be slow to populate and a bear to navigate through. What would be the point??

Here is my idea about it: I cannot imaging the Visual Studio extension which would be as redundant and annoying as the one you suggest to have.

First of all, it contradicts the principles dominated in present-day programming. As you tagged "VB.NET", it suggests you do .NET development. You could be able to understand that the file does not play the role of the programming module, but the assembly does. Not only the file does not present any sound unit in the code, the content of the file might actually make no sense without some other files. For example, remember such thing as the partial class declaration, where different parts can be (and usually are) placed in different files. And, after all, if you have a file loaded in a window, you already can see what's in it, if you use reasonably readable style of coding, of course.

You actually have much better options. Look at the context menu items "Go To Definition" and even "Find All References". Aren't they are really useful?

And finally, let's look at the assembly. The ultimate way of listing all declarations of an assembly (again, this is not really applicable to a source code file) is Reflection. To see how it looks it's enough to compile some assembly and reference it in some project by its executable module (usually *.EXE or *.DLL; yes, you can reference *.EXE as well, those are just file naming which does not matter) by using the "Browse" tab of the "Add Reference" window. You can click on the reference node in Solution explorer. It will load the reflected assembly in the code window, where you can browse all the declarations, see the documentation on each item, all the relevant information.

—SA
 
Share this answer
 
Comments
0bsidian 26-Apr-13 12:46pm    
You are right in definitely every part you are pointing to. But i have the (terrible) task to clean up a project that was recently ported from VB6 to VB.NET. Some of the classes have +15k lines of code, i am missing some overview ;-)
Voted 5.

Greetings
Dave Kreskowiak 26-Apr-13 14:05pm    
In VS2012 Update 2 (Ultimate) you get Code Map! This helps in navigating through what you have and who's refering what much easier without all the clutter.
Sergey Alexandrovich Kryukov 26-Apr-13 14:32pm    
Good to know! thank you, Dave.
—SA
Sergey Alexandrovich Kryukov 26-Apr-13 14:37pm    
Will you then accept the answer formally (green button)?

About the cleaning of of the mess like that: I do understand the problem well. You basically can have two opposite approaches: you either formally migrate VB6 to .NET and eliminate garbage step by step, or you do the opposite: start from the project from scratch, and add pieces of code step by step. Very often, the second approach is better: you don't filter a lot of pieces which you don't go into the project from the very beginning, you eliminate more problems. It is especially good when you migrate to .NET, because so many solutions you did in VB6 are already done for you in the framework's FCL.

—SA
No such monster in the Extensions site as far as I can tell.
 
Share this answer
 
Comments
Sergey Alexandrovich Kryukov 26-Apr-13 10:51am    
My 5. I think I understand why you say "such monster" and agree. :-)
I tried to explain why I think it does not make sense and suggested what does. Please see my answer.
—SA

This content, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)



CodeProject, 20 Bay Street, 11th Floor Toronto, Ontario, Canada M5J 2N8 +1 (416) 849-8900