Classe ImageField
Objeto leve que representa uma parte de uma forma que possa exibir decoradores de imagem ou planos de fundo.
Hierarquia de herança
System.Object
Microsoft.VisualStudio.Modeling.Diagrams.ShapeField
Microsoft.VisualStudio.Modeling.Diagrams.ImageField
Namespace: Microsoft.VisualStudio.Modeling.Diagrams
Assembly: Microsoft.VisualStudio.Modeling.Sdk.Diagrams.11.0 (em Microsoft.VisualStudio.Modeling.Sdk.Diagrams.11.0.dll)
Sintaxe
'Declaração
Public Class ImageField _
Inherits ShapeField
public class ImageField : ShapeField
O tipo ImageField expõe os membros a seguir.
Construtores
Nome | Descrição | |
---|---|---|
ImageField(String) | Inicializa uma nova instância da classe ImageField. | |
ImageField(String, Image) | Inicializa uma nova instância da classe ImageField. |
Superior
Propriedades
Nome | Descrição | |
---|---|---|
AnchoringBehavior | Descreve como o conteúdo do campo deve posicionar e dimensionar a mesmo em relação ao pai ShapeElement. (Herdado de ShapeField.) | |
DefaultAccessibleDescription | Obtém ou define a descrição acessível do padrão. (Herdado de ShapeField.) | |
DefaultAccessibleName | Obtém ou define o nome padrão do campo forma para o objeto acessível. (Herdado de ShapeField.) | |
DefaultAccessibleState | Obtém o estado padrão do campo forma para o objeto acessível. (Herdado de ShapeField.) | |
DefaultBackgroundBrushId | Obtém ou define a identificação do pincel padrão para pintar o plano de fundo do campo de forma. (Herdado de ShapeField.) | |
DefaultFocusable | Obtém o campo de forma e verifica se ele pode receber o foco ou permite que o campo de forma receber o foco. (Herdado de ShapeField.) | |
DefaultImage | Obtém ou define a imagem padrão associada a este ImageField.A imagem padrão pode ser personalizada, substituindo o método GetDisplayImage. | |
DefaultInactiveSelectedBackgroundBrushId | Obtém ou define a identificação do pincel de plano de fundo padrão para o campo de forma. (Herdado de ShapeField.) | |
DefaultPenId | Obtém ou define a identificação da caneta padrão a ser usado para o campo de forma. (Herdado de ShapeField.) | |
DefaultReflectParentFocusedState | Obtém o filho campo de forma e verifica se ele deve receber o foco quando a forma pai é focalizado ou define a capacidade para refletir o estado de foco da forma pai. (Herdado de ShapeField.) | |
DefaultReflectParentSelectedState | Obtém o filho campo de forma e verifica se ele deve ser selecionado quando forma pai é selecionada ou define a capacidade para refletir o estado de seleção da forma pai. (Herdado de ShapeField.) | |
DefaultSelectable | Obtém o campo de forma e verifica se ele pode ser selecionado por padrão ou define o estado de seleção do campo de forma padrão. (Herdado de ShapeField.) | |
DefaultSelectedBackgroundBrushId | Obtém ou define a identificação do pincel de plano de fundo padrão para o campo de forma. (Herdado de ShapeField.) | |
DefaultUnscaled | Obtém ou define se a imagem deve ser desenhada fora de escala em relação dos limites deste campo ou deve ser redimensionada para ajustar os limites. | |
DefaultVisibility | Obtém o campo de forma e verifica se ele é exibido por padrão ou define a visibilidade padrão do campo de forma. (Herdado de ShapeField.) | |
Name | Obtém o nome do campo de forma. (Herdado de ShapeField.) |
Superior
Métodos
Nome | Descrição | |
---|---|---|
AccessibleDoDefaultAction | Executa a ação padrão para o objeto acessível. (Herdado de ShapeField.) | |
AllowInPlaceEditorAutoSize | Permite que o editor in-loco ser dimensionada automaticamente no campo forma. (Herdado de ShapeField.) | |
AssociateValueWith(Store, AssociatedPropertyInfo) | Associa o campo de forma uma propriedade de domínio atribuído a um elemento de forma. (Herdado de ShapeField.) | |
AssociateValueWith(Store, Guid) | Associa o campo de forma uma propriedade de domínio atribuído a um elemento de forma. (Herdado de ShapeField.) | |
AssociateValueWith(Store, Guid, AssociatedPropertyInfo) | Associa o campo de forma uma propriedade de domínio atribuído a um elemento de forma. (Herdado de ShapeField.) | |
AssociateVisibilityWith(Store, AssociatedPropertyInfo) | Associa a visibilidade do campo de forma uma propriedade de domínio atribuído a um elemento de forma. (Herdado de ShapeField.) | |
AssociateVisibilityWith(Store, Guid) | Associa a visibilidade do campo de forma uma propriedade de domínio atribuído a um elemento de forma. (Herdado de ShapeField.) | |
AssociateVisibilityWith(Store, Guid, AssociatedPropertyInfo) | Associa a visibilidade do campo de forma uma propriedade de domínio atribuído a um elemento de forma. (Herdado de ShapeField.) | |
CanEditValue | Obtém o campo de forma e verifica se ele pode ser editado. (Herdado de ShapeField.) | |
CommitPendingEdit | Confirma a edição pendente. (Herdado de ShapeField.) | |
DoHitTest | Executa um teste de ocorrência em um ponto especificado no diagrama para determinar se o ponto está em um dos limites do campo de forma. (Herdado de ShapeField.) | |
DoKeyboardNavigation | Navega no campo forma usando o teclado. (Herdado de ShapeField.) | |
DoPaint | Desenha o conteúdo do ShapeField. (Substitui ShapeField.DoPaint(DiagramPaintEventArgs, ShapeElement).) | |
EditValue(ShapeElement, DiagramClientView) | Abre o editor in-loco para o campo de forma. (Herdado de ShapeField.) | |
EditValue(ShapeElement, DiagramClientView, PointD) | Abre o editor in-loco para o campo de forma. (Herdado de ShapeField.) | |
Equals | Determina se o objeto especificado é igual ao objeto atual. (Herdado de Object.) | |
Finalize | Permite que um objeto tentar liberar recursos e realizar outras operações de limpeza antes de ser recuperados pela coleta de lixo. (Herdado de Object.) | |
FindFirstChild | Localiza o primeiro campo de forma filho no campo forma pai. (Herdado de ShapeField.) | |
FindLastChild | Localiza o último campo de forma filho no campo forma pai. (Herdado de ShapeField.) | |
FindNextChild | Localiza o próximo campo de forma filho no campo forma pai. (Herdado de ShapeField.) | |
FindNextInChildSubFields | Localiza o próximo campo de forma filho na seqüência de navegação. (Herdado de ShapeField.) | |
FindPreviousChild | Localiza o campo de forma filho anterior no campo forma pai. (Herdado de ShapeField.) | |
FindPreviousInChildSubFields | Localiza o campo de forma filho anterior na seqüência de navegação. (Herdado de ShapeField.) | |
Focused | Obtém o campo de forma e verifica se ele tem o foco. (Herdado de ShapeField.) | |
GetAccessibilityObject | Obtém o objeto de acessibilidade que é atribuído ao campo de forma. (Herdado de ShapeField.) | |
GetAccessibleChild | Obtém o objeto de acessibilidade para o campo de forma filho. (Herdado de ShapeField.) | |
GetAccessibleChildCount | Obtém o número de objetos de acessibilidade que são atribuídos para o campo de forma pai e seus campos de forma filho. (Herdado de ShapeField.) | |
GetAccessibleDefaultActionDescription | Obtém a finalidade padrão do campo forma para o objeto acessível. (Herdado de ShapeField.) | |
GetAccessibleDescription | Retorna a descrição acessível do padrão para um campo de imagem. (Substitui ShapeField.GetAccessibleDescription(ShapeElement).) | |
GetAccessibleHelp | Obtém o campo da forma ajuda para o objeto acessível. (Herdado de ShapeField.) | |
GetAccessibleHelpTopicFileName | Obtém um tópico da Ajuda para o objeto acessível. (Herdado de ShapeField.) | |
GetAccessibleHelpTopicId | Obtém a ID que é atribuída ao tópico da Ajuda para o objeto acessível. (Herdado de ShapeField.) | |
GetAccessibleName | Retorna o nome acessível do padrão para um campo de imagem. (Substitui ShapeField.GetAccessibleName(ShapeElement).) | |
GetAccessibleRole | Recupera a função acessível desta ShapeField. (Substitui ShapeField.GetAccessibleRole(ShapeElement).) | |
GetAccessibleState | Obtém o estado do campo forma para o objeto acessível. (Herdado de ShapeField.) | |
GetAccessibleValue | Obtém o valor no campo forma para o objeto acessível. (Herdado de ShapeField.) | |
GetActiveInPlaceEditor | Obtém o editor no local que está ativo. (Herdado de ShapeField.) | |
GetBackgroundBrush | Obtém o pincel que desenha o plano de fundo do elemento de forma a que este campo de forma é atribuído. (Herdado de ShapeField.) | |
GetBackgroundBrushId | Obtém a ID do pincel que desenha o plano de fundo do elemento de forma a que este campo de forma é atribuído. (Herdado de ShapeField.) | |
GetBounds | Obtém os limites para o campo de forma. (Herdado de ShapeField.) | |
GetCursor | Obtém o ponteiro que aparece quando o mouse está apontando para o campo de forma. (Herdado de ShapeField.) | |
GetDisplayImage | Obtém a imagem a ser exibida por este campo. | |
GetFocusable | Obtém o campo de forma e verifica se ele pode receber o foco. (Herdado de ShapeField.) | |
GetHashCode | Serve como uma função de hash para um tipo específico. (Herdado de Object.) | |
GetInPlaceEditorBounds | Obtém os limites para o editor in-loco. (Herdado de ShapeField.) | |
GetMaximumInPlaceEditorSize | Obtém os limites máximo para o editor in-loco. (Herdado de ShapeField.) | |
GetMinimumInPlaceEditorSize | Obtém os limites mínimos para o editor in-loco. (Herdado de ShapeField.) | |
GetMinimumSize | Retorna o tamanho mínimo do ImageField. (Substitui ShapeField.GetMinimumSize(ShapeElement).) | |
GetPen | Obtém a caneta que desenha o elemento de forma a que o campo de forma é atribuído. (Herdado de ShapeField.) | |
GetPenId | Obtém a ID da caneta que desenha o elemento de forma a que o campo de forma é atribuído. (Herdado de ShapeField.) | |
GetPotentialMouseAction | Obtém a ação mouse para ativar quando o usuário clica em seguida um ponto específico no diagrama. (Herdado de ShapeField.) | |
GetSelectable | Obtém o campo de forma e verifica se ele pode ser selecionado. (Herdado de ShapeField.) | |
GetType | Obtém Type da instância atual. (Herdado de Object.) | |
GetUnscaled | Obtém se a imagem deve ser desenhada fora de escala ou não. | |
GetValue | Obtém o valor no campo forma. (Herdado de ShapeField.) | |
GetValueDomainPropertyInfo | Obtém a propriedade de domínio que é atribuída o valor no campo forma. (Herdado de ShapeField.) | |
GetVisible | Obtém o campo de forma e verifica se ele aparece. (Herdado de ShapeField.) | |
HasFocusedAppearance | Obtém o campo de forma e verifica se ela parece ter o foco. (Herdado de ShapeField.) | |
HasPendingEdit | Obtém o campo de forma e verifica se o seu editor no local está ativo e uma alteração é pendente. (Herdado de ShapeField.) | |
HasSelectedAppearance | Obtém o campo de forma e verifica se ele parece estar selecionada. (Herdado de ShapeField.) | |
IsNavigationKey(Char) | Obtém a chave que o usuário pressionou e verifica se ele pode ser usado para navegar entre os campos de forma. (Herdado de ShapeField.) | |
IsNavigationKey(Keys) | Obtém as chaves que o usuário pressionou e verifica se eles podem ser usados para navegar entre os campos de forma. (Herdado de ShapeField.) | |
MemberwiseClone | Cria uma cópia superficial de Objectatual. (Herdado de Object.) | |
NavigateAscend | Move o foco para o campo de forma anterior na seqüência de navegação para as formas selecionadas. (Herdado de ShapeField.) | |
NavigateDescend | Move o foco para o próximo campo de forma na seqüência de navegação para as formas selecionadas. (Herdado de ShapeField.) | |
NavigateToFirst | Move o foco para o primeiro campo de forma na seqüência de navegação para as formas selecionadas. (Herdado de ShapeField.) | |
NavigateToLast | Move o foco para o último campo da forma na seqüência de navegação para as formas selecionadas. (Herdado de ShapeField.) | |
NavigateToNext | Move o foco para o próximo campo de forma na seqüência de navegação para as formas selecionadas. (Herdado de ShapeField.) | |
NavigateToPrevious | Move o foco para o campo de forma anterior na seqüência de navegação para as formas selecionadas. (Herdado de ShapeField.) | |
OnBeginEdit | Ouvintes de alertas quando começou a edição in-loco. (Herdado de ShapeField.) | |
OnClick | Ouvintes de alertas quando o usuário clicou em um campo de forma. (Herdado de ShapeField.) | |
OnDoubleClick | Ouvintes de alertas quando o usuário clicou em um campo de forma. (Herdado de ShapeField.) | |
OnEndEdit | Ouvintes de alertas quando concluiu a edição in-loco. (Herdado de ShapeField.) | |
OnKeyDown | Ouvintes de alertas quando o usuário tem mantida pressionada uma tecla quando apontando para um campo de forma. (Herdado de ShapeField.) | |
OnKeyPress | Ouvintes de alertas quando o usuário pressiona uma tecla quando apontando para um campo de forma. (Herdado de ShapeField.) | |
OnKeyUp | Ouvintes de alertas quando o usuário lançou uma chave quando apontando para um campo de forma. (Herdado de ShapeField.) | |
OnMouseDown | Ouvintes de alertas quando o usuário está mantendo o botão do mouse pressionado sobre um campo de forma. (Herdado de ShapeField.) | |
OnMouseMove | Ouvintes de alertas quando o mouse foi movido sobre um campo de forma. (Herdado de ShapeField.) | |
OnMouseUp | Ouvintes de alertas quando o usuário que lançou o botão do mouse sobre um campo de forma. (Herdado de ShapeField.) | |
OnMouseWheel | Ouvintes de alertas quando o mouse sobre um campo de forma foi girado. (Herdado de ShapeField.) | |
Selected | Obtém o campo de forma e verifica se ele está selecionado. (Herdado de ShapeField.) | |
SetSelectionRange | Define a seleção a um intervalo de campos de forma filho. (Herdado de ShapeField.) | |
SetValue | Atribui o valor especificado para um campo de forma. (Herdado de ShapeField.) | |
SetVisible | Define a visibilidade do campo de forma. (Herdado de ShapeField.) | |
ToString | Retorna uma cadeia de caracteres que representa o objeto atual. (Herdado de Object.) |
Superior
Comentários
Quando você define um decorador de imagem em uma forma e quando você define uma forma de imagem, a área na qual a forma é exibida é gerenciada por um ImageField.Para obter exemplos da inicialização do ImageFields e outros ShapeFields, inspecione Dsl\GeneratedCode\Shapes.cs em sua solução DSL.
Um ImageField é um objeto que gerencia uma área dentro de uma forma, como, por exemplo, o espaço atribuído a decorador.Uma instância de ImageField é compartilhada entre várias formas da mesma classe shape.A instância de ImageField não armazena uma imagem separada para cada forma: em vez disso, o GetDisplayImage(ShapeElement) método assume a forma como um parâmetro e pode pesquisar a imagem dependem do estado atual da forma e seu elemento de modelo.
Se você quiser um comportamento especial, como uma imagem de variável, você pode criar sua própria classe derivada de ImageField.
Para criar uma subclasse de ImageField
Definir o Gera Double derivado a propriedade da classe shape pai em sua definição de DSL.
Substituir o InitializeShapeFields método de sua classe de forma.
- Criar um novo arquivo de código no projeto DSL e escrever uma definição de classe parcial para a classe shape.Substitua a definição do método lá.
Inspecione o código de InitializeShapeFields em DSL\GeneratedCode\Shapes.cs.
No seu método de substituição, chamar o método base e, em seguida, criar uma instância de sua própria classe de campo de imagem.Use esta opção para substituir o campo de imagem normais na shapeFields lista.
Exemplos
Este exemplo torna um ícone alterar dependem do estado de elemento de modelo da forma.
Cuidado |
---|
Este exemplo demonstra como tornar a decorador imagem dinâmica.Mas se você apenas quiser alternar entre uma ou duas imagens dependendo do estado de uma variável de modelo, é mais simples de criar vários decoradores de imagem, localizá-los na mesma posição na forma e, em seguida, definir o filtro de visibilidade depende de valores específicos da variável de modelo.Para definir este filtro, selecione o forma de mapa na definição de DSL, abra a janela de detalhes de DSL e clique na guia decoradores. |
Para executar este código de exemplo, crie uma nova solução DSL, usando o modelo de idioma mínima.Adicionar uma propriedade Boolean domínio AlternateState para a classe ExampleElement do domínio.Adicione um decorador de ícone para a classe ExampleShape e defina sua imagem como um arquivo de bitmap.Clique em transformar todos os modelos de.Adicionar um novo arquivo de código no projeto DSL e insira o código a seguir.
Para testar o código, pressione F5 e, na solução de depuração, abrir um diagrama de exemplo.O estado padrão do ícone deve aparecer.Selecione a forma e na janela Properties, altere o valor da AlternateState propriedade.O ícone, em seguida, deverá aparecer girado por meio de 90 graus, nessa forma.
using Microsoft.VisualStudio.Modeling;
using Microsoft.VisualStudio.Modeling.Diagrams;
...
partial class ExampleShape
{
/// <summary>
/// Compose a list of the fields in this shape.
/// Called once for each shape class.
/// </summary>
/// <param name="shapeFields"></param>
protected override void InitializeShapeFields(IList<ShapeField> shapeFields)
{
// Fields set up according to DSL Definition:
base.InitializeShapeFields(shapeFields);
// Replace the image field:
ShapeField oldField = ShapeElement.FindShapeField(shapeFields, "IconDecorator");
shapeFields.Remove(oldField);
// Must keep the same name:
MyImageField newField = new MyImageField(oldField.Name);
shapeFields.Add(newField);
newField.DefaultImage = (oldField as ImageField).DefaultImage.Clone() as System.Drawing.Image;
}
}
public class MyImageField : ImageField
{
public MyImageField(string tag) : base(tag) { }
/// <summary>
/// Get the image for this field in the given shape.
/// </summary>
public override System.Drawing.Image GetDisplayImage(ShapeElement parentShape)
{
ExampleElement element = parentShape.ModelElement as ExampleElement;
if (element.AlternateState == true)
return AlternateImage;
else
return base.GetDisplayImage(parentShape);
}
private System.Drawing.Image alternateImage;
public System.Drawing.Image AlternateImage
{
get
{
if (alternateImage == null)
{
// Alternate image is a copy of the default, rotated by 90 degrees:
alternateImage = this.DefaultImage.Clone() as System.Drawing.Image;
alternateImage.RotateFlip(System.Drawing.RotateFlipType.Rotate90FlipNone);
}
return alternateImage;
}
}
}
}
Acesso thread-safe
Quaisquer membros estático (Shared no Visual Basic) públicos deste tipo são thread-safe. Não há garantia de que qualquer membro de instância seja thread-safe.