Compartilhar via


Listas de conclusão filtradas em C#

IntelliSense remove os membros desnecessários da lista de conclusão usando filtros.

C# Visual filtra as listas de conclusão que aparecem para estes itens:

  • As interfaces e classes base.

  • Attributes.

  • ase is operadores.

  • Catch cláusulas.

  • Object Initializers

  • String objects

  • Events

Interfaces e Classes Base

IntelliSense automaticamente remove itens da interface e a base de classe listas de conclusão, nas listas de restrição e de listas de base e interface de declaração de classe. Por exemplo, enums não aparecem na lista de conclusão para as classes base, porque enums não pode ser usado para classes de base. A lista de conclusão das classes base contém apenas interfaces e namespaces. Se você seleciona um item na lista e, em seguida, digite uma vírgula, o IntelliSense remove classes base da lista de conclusão, porque Visual C# não oferece suporte a várias heranças. O mesmo comportamento também ocorre de cláusulas constraint.

Attributes

Quando você aplica um atributo para um tipo, a lista de conclusão é filtrada para que a lista contém somente os tipos que descendem do namespaces que contêm esses tipos como Attribute.

como e operadores

Para o as operador, IntelliSense, listas de conclusão são filtradas para que somente os tipos de referência apareçam após digitar as. Além disso, uma lista de conclusão é exibida automaticamente quando você pressiona a barra de espaços após digitar a as ou is palavra-chave.

Catch cláusulas

Para catch, somente exibe a lista de conclusão de IntelliSense tipos relevantes. Esses tipos incluem aquelas derivadas da Exception, tipos que incluem tipos aninhados e que são restritos em tipos que derivam de Exception.

Object Initializers

Somente os membros podem ser inicializados aparecerá na lista de conclusão. For example:

class Cust
{
    public string Name { get; set; }
    public int Age { get; set; }
}
class MyApp
{
    static void Main()
    {
        var customer = new Cust()
        {
            //Name and Age appear in completion list
            Name = "Sally",
            //Only Age appears in completion list
            Age = 30
        };
    }
}

O exemplo anterior cria uma classe Cust com dois implementado para auto propriedades. Quando inicializamos o Name a propriedade, apenas Name e Age aparecem na lista de conclusão. A lista de conclusão filtra de entradas que não são relevantes para a inicialização do objeto. Para obter informações sobre os inicializadores de objeto, consulteObjeto e coleção inicializadores (guia de programação TRANSLATION FROM VPE FOR CSHARP)

Objetos String

Quando você usa String objetos, a lista de conclusão do Visual C# Exibir métodos de extensão do IEnumerable interfaces. Isso é feito para ocultar a complexidade em um tipo usado com freqüência.

Events

Quando você digita a palavra-chave <>evento>(TRANSLATION FROM VPE FOR CSHARP Reference), a lista de conclusão contém somente tipos de representante.

Consulte também

Conceitos

Listas de conclusão no C#

Itens de lista pré-selecionada conclusão em C#

Outros recursos

Visual C# IntelliSense