Propriedade ShapeField.AnchoringBehavior
Descreve como o conteúdo do campo deve posicionar e dimensionar a mesmo em relação ao pai ShapeElement.
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 ReadOnly Property AnchoringBehavior As AnchoringBehavior
public AnchoringBehavior AnchoringBehavior { get; }
Valor de propriedade
Tipo: Microsoft.VisualStudio.Modeling.Diagrams.AnchoringBehavior
Comentários
O AnchoringBehavior descreve como os de ShapeField deve posicionar e dimensionar propriamente dito em relação a seu pai e o irmão ShapeElements.
Para alterar o padrão de comportamento de ancoragem
Definir o Gera Double derivado propriedade de sua forma de classe na definição de DSL e clique em Transformar todos os modelos de.
Substituir InitializeDecorators() na sua classe de forma.
- Crie um arquivo em seu projeto DSL e adicionar uma definição de classe parcial para sua classe de forma.O método Insert nessa classe.
Chamar o SetAnchor métodos para o AnchoringBehavior objeto.
Exemplos
Por padrão, um campo de texto ocupa apenas uma única linha.Entretanto, este exemplo define uma forma na qual o usuário pode digitar o texto "codifica" em várias linhas.Para ver o comportamento de quebra, podemos também deve ancorar os lados do campo para os lados da forma.
Cuidado |
---|
Este código irá trabalhar com uma DSL criada usando o modelo de solução de idioma mínima.Adicionar a decorador chamado CommentDecorator para ExampleShapee mapeá-la a uma propriedade de seqüência de caracteres na classe de domínio ExampleElement.Definir o Gera Double derivado propriedade para ExampleShape na definição de DSL, para que o InitializeDecorators método pode ser substituído. |
public partial class ExampleShape
{
// Called once for each shape instance, after InitializeShapeFields
protected override void InitializeDecorators
(IList<ShapeField> shapeFields, IList<Decorator> decorators)
{ // Be sure to call the base method.
base.InitializeDecorators(shapeFields, decorators);
// Look up the shape field, which is called "CommentDecorator":
TextField commentField = (TextField)ShapeElement.FindShapeField(shapeFields, "CommentDecorator");
TextField nameField = (TextField)ShapeElement.FindShapeField(shapeFields, "NameDecorator");
// Allow multiple lines of text in the field.
commentField.DefaultMultipleLine = true;
// Autosize is not supported for multi-line fields.
commentField.DefaultAutoSize = false;
// Anchor the field slightly inside the container shape.
commentField.AnchoringBehavior.Clear();
commentField.AnchoringBehavior.
SetLeftAnchor(AnchoringBehavior.Edge.Left, 0.01);
commentField.AnchoringBehavior.
SetRightAnchor(AnchoringBehavior.Edge.Right, 0.01);
commentField.AnchoringBehavior.
SetTopAnchor(nameField, AnchoringBehavior.Edge.Bottom, 0.01);
commentField.AnchoringBehavior.
SetBottomAnchor(AnchoringBehavior.Edge.Bottom, 0.01);
}
}
Segurança do .NET Framework
- Confiança total para o chamador imediato. O membro não pode ser usado por código parcialmente confiável. Para obter mais informações, consulte Usando bibliotecas de código parcialmente confiáveis.