Compartilhar via


Classe BoundsRules

Regras que restringir onde uma forma pode ser localizada e como ele pode ser dimensionado.

Hierarquia de herança

System.Object
  Microsoft.VisualStudio.Modeling.Diagrams.BoundsRules
    Microsoft.VisualStudio.Modeling.Diagrams.AvoidCornerRule
    Microsoft.VisualStudio.Modeling.Diagrams.DefaultBoundsRules
    Microsoft.VisualStudio.Modeling.Diagrams.KeepInParentRule
    Microsoft.VisualStudio.Modeling.Diagrams.NoBoundsRules
    Microsoft.VisualStudio.Modeling.Diagrams.PortMovementRule
    Microsoft.VisualStudio.Modeling.Diagrams.SnapToGridRule
    Microsoft.VisualStudio.Modeling.Diagrams.SnapToPerimeterFollowingRotationRule

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
<SerializableAttribute> _
Public MustInherit Class BoundsRules
[SerializableAttribute]
public abstract class BoundsRules

O tipo BoundsRules expõe os membros a seguir.

Construtores

  Nome Descrição
Método protegido BoundsRules

Superior

Métodos

  Nome Descrição
Método público Equals Determina se o objeto especificado é igual ao objeto atual. (Herdado de Object.)
Método protegido 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.)
Método público GetCompliantBounds Ajuste a um tamanho proposto e posicione de forma que eles são compatíveis com esta regra de limites.Chamado repetidamente enquanto o usuário move o mouse.A forma de ghost mostra o usuário compatíveis com dos limites.
Método público GetHashCode Serve como uma função de hash para um tipo específico. (Herdado de Object.)
Método público GetType Obtém Type da instância atual. (Herdado de Object.)
Método protegido MemberwiseClone Cria uma cópia superficial de Objectatual. (Herdado de Object.)
Método público ToString Retorna uma cadeia de caracteres que representa o objeto atual. (Herdado de Object.)

Superior

Comentários

A Regra de limites é uma classe que define os limites no tamanho e localização de uma forma.GetCompliantBoundsé chamado repetidamente enquanto um usuário está arrastando uma forma ou cantos ou lados de uma forma.

Para obter mais informações, consulte BoundsRules restringir o tamanho e a localização de forma.

Exemplos

O exemplo a seguir restringe a uma forma retangular para ser uma barra de tamanho fixo, horizontal ou vertical.Quando o usuário arrasta o cantos ou nas laterais, o contorno inverte entre as duas configurações permitidas da altura e largura.

Observe que o local e o tamanho podem ser limitados se você desejar.

A regra de limites é uma classe e uma instância é criada na forma:

using Microsoft.VisualStudio.Modeling.Diagrams; ...
public partial class BarShape
{
  /// <summary>
  /// Rule invoked when the user is resizing a shape.
  /// </summary>
  public override BoundsRules BoundsRules
  { get { return new BarBoundsRule(); } }
}
/// <summary>
/// Rule invoked when the user is changing a shape's outline.
/// Provides real-time mouse rubber-band feedback, so must work fast.
/// </summary>
public class BarBoundsRule: BoundsRules
{ 
  public override RectangleD GetCompliantBounds 
     (ShapeElement shape, RectangleD proposedBounds)
  {
    double thickness = 0.1;
    if (proposedBounds.Height > proposedBounds.Width)
    {
      // There is a minimum width for a shape; the width
      // will actually be set to the lesser of 
      // thickness and that minimum.
      return new RectangleD(proposedBounds.Location, 
            new SizeD(thickness, proposedBounds.Height));
    }
    else
    {
      // There is a minimum height for a shape; the 
      // height will actually be set to the lesser of 
      // thickness and that minimum.
      return new RectangleD(proposedBounds.Location, 
         new SizeD(proposedBounds.Width, thickness));
} } }

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.

Consulte também

Referência

Namespace Microsoft.VisualStudio.Modeling.Diagrams

Outros recursos

BoundsRules restringir o tamanho e a localização de forma