NodeShape.AbsoluteBoundsDomainPropertyId (Campo)
GUID utilizado para identificar la propiedad del dominio de AbsoluteBounds.
Espacio de nombres: Microsoft.VisualStudio.Modeling.Diagrams
Ensamblado: Microsoft.VisualStudio.Modeling.Sdk.Diagrams.11.0 (en Microsoft.VisualStudio.Modeling.Sdk.Diagrams.11.0.dll)
Sintaxis
'Declaración
Public Shared ReadOnly AbsoluteBoundsDomainPropertyId As Guid
public static readonly Guid AbsoluteBoundsDomainPropertyId
Comentarios
utilice esto en ChangeRule para responder a los cambios en los límites absolutos.Una regla de cambio se realiza en la transacción que activó la regla, normalmente justo antes del final de la transacción.
Ejemplos
// This rule responds to changes in location and size of MyShape,
// which is declared in DSL Definition.
[RuleOn(typeof(MyShape))]
public sealed class MyShapeMoveRule : ChangeRule
{
public override void ElementPropertyChanged(ElementPropertyChangedEventArgs e)
{
MyShape shape = e.ModelElement as MyShape;
if (shape == null) return;
if (shape.Store.InSerializationTransaction) return;
if (!shape.IsNestedChild) return;
if (e.DomainProperty.Id == NodeShape.AbsoluteBoundsDomainPropertyId)
{
shape.ParentShape.NestedChildShapes.Move(shape,
shape.ParentShape.NestedChildShapes.Count - 1);
// this.Diagram.NeedsRenumber should be set after
// re-ordering the child shapes. It should also be
// set after the user invokes Undo or Redo; but
// the rule is not called in Undo or Redo.
// So instead, we will put the NeedsRenumber call
// in an override of OnAbsoluteBoundsChanged, which
// is always called.
}
}
}
// Register the rule.
partial class InstanceDiagramsDomainModel
{
protected override Type[] GetCustomDomainModelTypes()
{
List<Type> types = new List<Type>(base.GetCustomDomainModelTypes());
types.Add(typeof(MyShapeMoveRule));
return types.ToArray();
}
}
partial class MyShape // Declared in DSL Definition
{
// Called even in Undo or Redo.
public override void OnAbsoluteBoundsChanged(AbsoluteBoundsChangedEventArgs e)
{
base.OnAbsoluteBoundsChanged(e);
this.Diagram.NeedsRenumber = true;
}
}
Seguridad de .NET Framework
- Plena confianza para el llamador inmediato. Un código de confianza parcial no puede utilizar este miembro. Para obtener más información, vea Utilizar bibliotecas de código que no es de plena confianza.
Vea también
Referencia
Microsoft.VisualStudio.Modeling.Diagrams (Espacio de nombres)