Поделиться через


ShapeField.AnchoringBehavior - свойство

Описывает, как содержимое поля должно располагаться, и сам размер относительно родительского ShapeElement.

Пространство имен:  Microsoft.VisualStudio.Modeling.Diagrams
Сборка:  Microsoft.VisualStudio.Modeling.Sdk.Diagrams.12.0 (в Microsoft.VisualStudio.Modeling.Sdk.Diagrams.12.0.dll)

Синтаксис

'Декларация
Public ReadOnly Property AnchoringBehavior As AnchoringBehavior
public AnchoringBehavior AnchoringBehavior { get; }

Значение свойства

Тип: Microsoft.VisualStudio.Modeling.Diagrams.AnchoringBehavior

Заметки

AnchoringBehavior описание ShapeField должен расположить и размер самого в применении к его родительскому элементу и одноуровневому ShapeElements.

Чтобы изменить значение по умолчанию привязки расширения функциональности

  1. Задайте для свойства Создает производный тип double класса фигуры в определении доменного языка, и нажмите кнопку Преобразовать все шаблоны.

  2. Переопределите InitializeDecorators() в классе формы.

    • Создайте файл в проекте доменного языка, и добавьте в определение разделяемого класса для класса фигуры. Добавьте метод в этот класс.
  3. Вызовите методы SetAnchor объекта AnchoringBehavior.

Примеры

По умолчанию в текстовом поле только занимает отдельную линии. Однако в этом образце определяет форму, в которой пользователь может вводить текст», «использование оболочки на несколько линий. Чтобы просмотреть расширение функциональности обертывания, нужно также привязать стороны поля у края фигуры.

Предупреждение

Этот код будет работать с доменный язык, созданный из минимального шаблона решения языка.Добавьте в оформитель CommentDecorator в ExampleShape и сопоставление его к строковому свойству в доменном классе ExampleElement.Задайте для свойства Создает производный тип double для ExampleShape в определении доменного языка, поэтому метод InitializeDecorators можно переопределить.

  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);
    }
  }

Безопасность платформы .NET Framework

См. также

Ссылки

ShapeField Класс

Microsoft.VisualStudio.Modeling.Diagrams - пространство имен