BoundsRules 類別
限制圖形位置及調整大小方式的規則。
繼承階層架構
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
命名空間: Microsoft.VisualStudio.Modeling.Diagrams
組件: Microsoft.VisualStudio.Modeling.Sdk.Diagrams.12.0 (在 Microsoft.VisualStudio.Modeling.Sdk.Diagrams.12.0.dll 中)
語法
'宣告
<SerializableAttribute> _
Public MustInherit Class BoundsRules
[SerializableAttribute]
public abstract class BoundsRules
BoundsRules 類型會公開下列成員。
建構函式
名稱 | 描述 | |
---|---|---|
BoundsRules |
回頁首
方法
名稱 | 描述 | |
---|---|---|
Equals | 判斷指定的物件是否等於目前物件。 (繼承自 Object)。 | |
Finalize | 允許物件在記憶體回收進行回收之前,嘗試釋放資源並執行其他清除作業。 (繼承自 Object)。 | |
GetCompliantBounds | 調整建議的大小和位置,使其符合這項界限規則。在使用者移動滑鼠時重複呼叫。虛構圖案為使用者顯示相容的界限。 | |
GetHashCode | 做為預設雜湊函式。 (繼承自 Object)。 | |
GetType | 取得目前執行個體的 Type。 (繼承自 Object)。 | |
MemberwiseClone | 建立目前 Object 的淺層複本 (Shallow Copy)。 (繼承自 Object)。 | |
ToString | 傳回表示目前物件的字串。 (繼承自 Object)。 |
回頁首
備註
繫結規則 是定義在形狀的大小及位置的限制的類別。 當使用者拖曳圖形或圖案時,的邊角或框GetCompliantBounds 重複呼叫。
如需詳細資訊,請參閱BoundsRules 限制圖案位置和大小。
範例
下列範例限制矩形列是固定大小,水平或垂直。 當使用者拖曳或框角落時,大綱翻轉高度和寬度的兩個允許的組態之間。
請注意位置和大小可以限制,如果您要。
繫結規則是類別,因此,執行個體在圖案建立:
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));
} } }
執行緒安全
這個類型的任何 Public static (在 Visual Basic 中為 Shared) 成員都是安全執行緒。不保證任何執行個體成員是安全執行緒。
請參閱
參考
Microsoft.VisualStudio.Modeling.Diagrams 命名空間