2011-11-23 6 views
10

Cuando escribe "esto" , por lo general, obtienes todas las rutinas, eventos y más ... de la clase actual en la que te encuentras. Y cuando simplemente te paras sobre una de las rutinas en la lista larga sin elegir una, generalmente obtienes una descripción al lado.¿Cómo obtener intellisense para clases personalizadas?

¿Cómo puedo hacer eso? Supongamos que tengo una clase llamada CAR con dos rutinas: speed_up() y brake(). Cómo puedo hacer que la persona que utiliza mi clase para ver una descripción de las dos funciones cuando se teclea:

CAR mycar = new CAR(); 
mycar. 

Respuesta

23

Por encima de una clase o un método, en lugar de un comentario "//". si realiza una barra diagonal "///" (también conocida como comentario XML), realiza un atajo para permitirle completar información sobre la clase o el método que está comentando.

Esto entonces aparece en el código como tal

/// <summary> 
    /// 
    /// </summary> 
    /// <param name="sender"></param> 
    /// <param name="e"></param> 
    void Method(object sender, EventArgs e) 

Cuando a continuación, acceder a la clase o método a través de IntelliSense eso es cuando aparecerá la descripción.

+0

Es tan simple. : D Gracias. – Fares

+0

Descubrí problemas con Intellisense en combinación con espacios de nombres: [link] http://stackoverflow.com/questions/23562307/intellisense-not-shown-on-public-classes-but-on-private-ones [link] puede ¿confirmar? –

8

Dé a sus clases y sus miembros, XML comments, que aparecerán en intellisense. La forma más fácil de hacerlo en Visual Studio es escribiendo /// encima de lo que desea agregar comentarios.

Por ejemplo:

/// <summary> 
/// Class level summary documentation goes here.</summary> 
/// <remarks> 
/// Longer comments can be associated with a type or member through 
/// the remarks tag.</remarks> 
public class TestClass : TestInterface 
{ 
    /// <summary> 
    /// Store for the name property.</summary> 
    private string _name = null; 

    /// <summary> 
    /// The class constructor. </summary> 
    public TestClass() { } 

    /// <summary> 
    /// Description for SomeMethod.</summary> 
    /// <param name="s"> Parameter description for s goes here.</param> 
    /// <seealso cref="System.String"> 
    /// You can use the cref attribute on any tag to reference a type or member 
    /// and the compiler will check that the reference exists. </seealso> 
    public void SomeMethod(string s) 
    { 
    } 
} 

Lo anterior se encontró here.


Consulte también: How do you get XML comments to appear in a different project (dll)?

+1

Creo que la barra es de otra manera, como '///' – V4Vendetta

+0

Vaya, solo lo noté, gracias. –

2

Trate de añadir un resumen de sus métodos tecleando /// y llenar, como a continuación

/// <summary> 
/// This is my speed up method 
/// </summary> 
public void speed_up(){ ...} 

usted puede hacer esto para cada uno de los métodos y propiedades, para que de manera significativa muestra la intención de Intellisense.

3

se debe utilizar el formato de documentación XML disponible en Visual Studio para cada tipo de construcciones (es decir, de clase, métodos, propiedades ...)

Para ello, escriba /// en la línea antes de su declaración.

Por ejemplo:

/// 
    public void Method(string p){... 

obtendrá algo como:

/// <summary> 
    /// 
    /// </summary> 
    /// <param name="p"></param> 
    public void Method(string p){... 

si escribe /// < incluso se va a obtener la lista de elementos XML disponibles, al igual que las observaciones o exemple Para obtener más información, consulte http://msdn.microsoft.com/en-us/magazine/cc302121.aspx

2

Puede poner comentarios como este:

/// <summary> 
/// This sppeds up the car 
/// </summary> 
public void speed_up() 
{ } 
2

usted tiene que poner un comentario en esta manera:

/// <summary> 
/// This is my function. 
/// </summary> 
/// <param name="myParameter">This parameter is very important.</param> 
/// <returns>It returns always 42.</returns> 
public int MyFunction(string myParameter) 
{ 
    return 42; 
} 

Se puede describir el uso de la función <summary> y el significado de los parametros <param name="">. Si la función tiene un valor de retorno, puede describirlo con la etiqueta <returns>. Se admiten algunas etiquetas mor, que se mostrarán en el estudio visual cuando escriba su comentario después de tres \.

1

Necesita agregar comentarios del documento para los métodos. puedes hacerlo manualmente escribiendo '///' o usando Visual Studio Addin. Si sigue las buenas convenciones de nomenclatura, GhostDoc agregar le ayudará mucho en esto.

+0

Obtengo intellisense para clases personalizadas de todo pero no para nada en cualquier dll personalizado al que se haga referencia en la solución a pesar del trabajo de /// dentro de las clases y miembros ... – gg89

Cuestiones relacionadas