Compartilhar via


ExpressionEditorSheet Classe

Definição

Representa uma folha de editor de tempo de design para uma expressão personalizada. Essa classe deve ser herdada.

public ref class ExpressionEditorSheet abstract
public abstract class ExpressionEditorSheet
type ExpressionEditorSheet = class
Public MustInherit Class ExpressionEditorSheet
Herança
ExpressionEditorSheet
Derivado

Comentários

Uma planilha de editor de expressão personalizada permite que um desenvolvedor defina propriedades em uma expressão personalizada em tempo de design. Os valores de propriedade de controle podem ser definidos usando cadeias de caracteres de expressão; as cadeias de caracteres de expressão são avaliadas em tempo de execução por um construtor de expressões e em tempo de design por um editor de expressão.

Quando você procura a Expressions propriedade de um controle na grade de propriedades de tempo de design, o designer visual exibe uma caixa de diálogo para definir expressões que fornecem o valor para uma propriedade de controle. Você pode selecionar o tipo de expressão com base em uma lista de prefixos de expressão. Quando você seleciona um prefixo de expressão na lista, o designer visual usa os ExpressionEditor objetos associados e ExpressionEditorSheet para avaliar e converter a cadeia de caracteres de expressão com base na sintaxe para esse tipo de expressão. O designer visual usa propriedades de planilha do editor de expressões para solicitar uma ou mais cadeias de caracteres que se combinam na cadeia de expressão personalizada.

Normalmente, para fornecer um novo tipo de expressão em tempo de design, você define um prefixo de expressão exclusivo e fornece ExpressionBuilder ExpressionEditor implementações personalizadas e. Opcionalmente, você pode fornecer uma ExpressionEditorSheet implementação personalizada que define as propriedades que são usadas para formar a expressão. Para associar um prefixo de expressão a um construtor de expressões e a um editor de expressão, aplique o ExpressionEditorAttribute atributo e um ExpressionPrefixAttribute atributo à ExpressionBuilder classe personalizada e, em seguida, configure o prefixo de expressão para um construtor de expressões no expressionBuilders elemento no arquivo de configuração da Web.

A implementação padrão do GetExpressionEditorSheet método retorna uma folha de editor básica, que usa uma única cadeia de caracteres de entrada para formar a expressão. Os editores de expressão personalizada que são derivados do ExpressionEditor podem substituir o GetExpressionEditorSheet método para retornar uma implementação de planilha de editor Personalizada. Normalmente, uma planilha de editor personalizada contém várias propriedades que são usadas para criar a cadeia de caracteres de expressão. O GetExpression método retorna a cadeia de caracteres de expressão resultante com base nas propriedades da expressão atual.

Por exemplo, a ResourceExpressionEditor classe deriva da ExpressionEditor classe e fornece uma implementação para avaliar e associar uma referência de cadeia de caracteres de recurso com uma propriedade de controle em tempo de design. A ResourceExpressionBuilder classe é associada ao prefixo da expressão Resources e à ResourceExpressionEditor implementação. O GetExpressionEditorSheet método retorna um ResourceExpressionEditorSheet , que define as propriedades individuais que formam uma expressão de referência de recurso.

Ao herdar da ExpressionEditorSheet classe, você deve substituir os seguintes membros:

  • O GetExpressionEditorSheet método para retornar uma implementação de planilha de editor Personalizada.

  • O ExpressionEditorSheet construtor para implementar ações de inicialização personalizadas para a implementação da planilha do editor de expressão.

Notas aos Implementadores

Derive uma folha de editor de expressão personalizada da ExpressionEditorSheet classe, se você estiver definindo um novo tipo de expressão para valores de propriedade de controle e desejar criar a cadeia de caracteres de expressão com base em vários valores de propriedade de expressão. Uma implementação de classe derivada deve conter o seguinte: – Uma propriedade pública para cada valor distinto na cadeia de caracteres de expressão que pode ser definida em tempo de design.

-Uma implementação do GetExpression() método que forma a cadeia de caracteres de expressão personalizada dos valores de propriedade da planilha do editor.

-Opcionalmente, uma implementação de construtor que define os valores iniciais das propriedades da planilha do editor.

A classe do editor de expressão personalizada associada cria uma instância da folha do editor derivado no GetExpressionEditorSheet(String, IServiceProvider) método, inicializa essa instância com a cadeia de caracteres de expressão atual definida para a propriedade Control e retorna a instância para o designer visual. O designer visual permite que você defina as propriedades da folha de expressões e, em seguida, chama o GetExpression() método para formar a cadeia de caracteres de expressão a partir dos valores de propriedade da folha de expressões de entrada.

Construtores

ExpressionEditorSheet(IServiceProvider)

Inicializa uma nova instância da classe ExpressionEditorSheet.

Propriedades

IsValid

Obtém um valor que indica se a cadeia de caracteres da expressão é válida.

ServiceProvider

Obtém a implementação do provedor de serviço usada pela folha do editor de expressão.

Métodos

Equals(Object)

Determina se o objeto especificado é igual ao objeto atual.

(Herdado de Object)
GetExpression()

Quando substituído em uma classe derivada, retorna a cadeia de caracteres de expressão que é formada pelos valores de propriedade de folha de editor de expressão.

GetHashCode()

Serve como a função de hash padrão.

(Herdado de Object)
GetType()

Obtém o Type da instância atual.

(Herdado de Object)
MemberwiseClone()

Cria uma cópia superficial do Object atual.

(Herdado de Object)
ToString()

Retorna uma cadeia de caracteres que representa o objeto atual.

(Herdado de Object)

Aplica-se a

Confira também