2009-02-13 8 views
37

Vengo de un fondo Java y he pasado muchos años usando Eclipse. Una característica que echo de menos al usar Visual Studio (2008) es que la vista de clase no se actualiza automáticamente cuando cambio de clase. En Eclipse tiene una ventana (de clase) 'Esquema' que representa la clase actual y muestra métodos/propiedades, etc., esto siempre se actualiza a la clase que está utilizando.Visual Studio - Actualizar automáticamente la vista de clase al cambiar la clase

La 'Vista de clase' equivalente en VS no se actualiza automáticamente de acuerdo con la clase actual que estoy visitando. Me preguntaba si alguien sabía cómo hacer que esto sucediera.

Idealmente, me gustaría que la vista de VS fuera lo más similar posible a Eclipse, pero esta característica sería genial.

Gracias de antemano, Will

+0

Eclipse no está solo, Netbeans hace lo mismo. – SMUsamaShah

Respuesta

-4

Con ReSharper, ALT + SHIFT + L va al archivo actual en el Explorador de soluciones.

+1

Funciona solo para Resharper, por lo que no considero que sea una respuesta, aunque funciona con mi visual studio + resharper 4.1 – Sung

+3

Clase en la vista de clase, no archivo en el explorador de soluciones ... –

-3

Menú Herramientas -> Opciones

A continuación, en el área de "Proyecto y soluciones", se puede seleccionar para seguir el elemento activo.

+0

Verificado en Visual Studio 2008 (con Resharper 4.1) – Sung

+3

Esto funciona para el Explorador de soluciones, pero no para la Vista de clases, que es lo que el OP está buscando. –

0

No conozco ninguna forma de hacerlo, pero estoy de acuerdo en que sería una buena característica.

Puede rastrear elementos en el Explorador de soluciones (Opciones-> Proyecto y soluciones-> General-> Seguir elemento activo en el Explorador de soluciones).

8

No puedo ayudarte con la vista de clases, pero quizás quieras probar el explorador de soluciones? Puede sincronizar este a través de:

tools -> options -> projects and solutions -> general 
enable "track active item in solution explorer" 
+0

¡Esto es lo que usé! La vista de clase sincronizar el atajo de teclado no funcionaría con varios enlaces. – Chucky

-2

Viniendo de Eclipse, perderá muchas de esas características. Lo que más extraño de la navegación es un fácil de ir al tipo, ir al heredero y así sucesivamente. Otras características, como la compatibilidad con nUnit, tampoco son parte del vainilla de Visual Studio. Aquí está una lista de complementos que cerrar la brecha:

Pero aquí viene el inconveniente: todos ellos le cobran dinero (TestDriven.net solo para uso comercial). Sin embargo, todos ofrecen pruebas gratuitas.

+0

IIRC puede/ir a escribir/con shift-F12. –

+0

Ctrl + F12, Mayús + F12, o haga sus accesos directos personalizados – tatigo

18

Para Visual Studio 2005

he encontrado una solución que no se actualiza la vista de forma automática, pero al menos puedes conseguir una entrada de contexto que ayuda a:

http://blogs.msdn.com/ansonh/archive/2005/12/09/502020.aspx

También puede definir una tecla de método abreviado:

Herramientas-> Opciones-> Entorno-> Teclado y vea si puede encontrar "View.SynchronizeClassView".


Oh, sólo por diversión - aquí es la respuesta de Microsoft: http://msdn.microsoft.com/en-us/library/2dae8h2s.aspx

... Se puede seleccionar cualquier símbolo en el Editor de código y localizarlo instante ...

Después 7 Pasos ...

"Vista de clases automáticamente rollos a la ubicación del símbolo seleccionado en su jerarquía. "

+0

No creo que esto funcione en VS2010 (RC) más :( –

+0

Para aclaración, el atajo de teclado View.SynchronizeClassView FUNCIONA con VS2010 RC. – Jaxidian

+4

El documento de Microsoft realmente es (presumiblemente involuntariamente) gracioso. Cómo consideran que un proceso tan lento y manual es "instantáneo y automático" obliga a creer. – Sam

1

no he tenido tiempo para conseguir que esto funcione, sin embargo, pero hay un código para VS2003/2005 complemento para la sincronización automática here (ver el mensaje marcado como 'respuesta').

por cierto, esta cuestión parece ser un duplicado de this one

2

según la respuesta del kingmaxxx me encontré con que se puede añadir un botón a la barra de herramientas para hacer las mismas:.

Herramientas | Personalizar -> Comandos [tAB] -> Ver [Categorías]

Tome el botón Sincronizar vista de clase y arrástrelo a una de sus barras de herramientas.

39

Después de leer la respuesta de kingmaxxx, fui a Herramientas-> Opciones-> Entorno-> Teclado y acepté Ctrl + Shift + C para Ver.Sincronizar Vista de clase en la vista Editor de texto. Esto parece suplantar y complementar el comportamiento original (View.ClassView), ya que mostrará ClassView si no fue visible y se centrará en la clase actual.

(Visual Studio 2008)

+0

buena idea, funciona en Visual Studio 2010 también. –

+0

funciona en 2005 también. – Sam

+0

buena respuesta ... +1 – Nicholas

3

El problema es que es View.SynchronizeClassView no funciona cuando una clase se ve desde una carpeta virtual.

6

La mejor manera es crear un menú contextual al hacer clic con el botón derecho en un tipo de editor de código. Herramientas-> Personalizar Haga clic en la pestaña 'Comandos'. Seleccione el botón de opción Menú contextual y seleccione "Menú contextual del editor | Ventana Código". Luego, "Agregar comando" y seleccione Ver-> Sincronizar vista de clase.

Ahora cada vez que haga clic con el botón derecho en un tipo, puede seleccionar "Sincronizar vista de clase". Es el ítem del menú de contexto muy superior. se ve así: Context-menu

0

también procedente de Java (Eclipse), echaba de menos el contorno (visor de clase). He intentado muchas soluciones y lo mejor que encontré es usar el CODEMAID extension.

¡También proporciona muchas otras herramientas pero usted es libre de usarlo!

Cuestiones relacionadas