ShapeField.AnchoringBehavior 属性
描述字段的内容应如何有关父 ShapeElement 确定和调整大小。
命名空间: Microsoft.VisualStudio.Modeling.Diagrams
程序集: Microsoft.VisualStudio.Modeling.Sdk.Diagrams.11.0(在 Microsoft.VisualStudio.Modeling.Sdk.Diagrams.11.0.dll 中)
语法
声明
Public ReadOnly Property AnchoringBehavior As AnchoringBehavior
public AnchoringBehavior AnchoringBehavior { get; }
属性值
类型:Microsoft.VisualStudio.Modeling.Diagrams.AnchoringBehavior
备注
AnchoringBehavior 描述 ShapeField 应如何有关其父级以及同级 ShapeElements 确定和调整大小。
修改锚定行为的默认
设置形状类的 生成派生的二进制文件 属性在 DSL 定义的,然后单击 转换所有模板。
在形状类的重写 InitializeDecorators() 。
- 创建一个文件在 DSL 项目,并将形状类的分部类定义。插入方法在该类。
调用 AnchoringBehavior 对象的 SetAnchor 方法。
示例
默认情况下,文本字段只占用一行。但是,此示例定义用户可以输入文本 “包装”跨多行上的形状。若要查看该包装的行为,我们还必须锚定字段的一侧到形状的。
警告 |
---|
此代码与最小语言解决方案模板创建的 DSL 一起使用。添加一个修饰器调用 CommentDecorator 到 ExampleShape,并将其映射到在域类 ExampleElement的字符串属性。设置 ExampleShape 的 生成派生的二进制文件 属性在 DSL 定义的,因此, 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 安全性
- 对直接调用方的完全信任。此成员不能由部分信任的代码使用。有关更多信息,请参见通过部分受信任的代码使用库。