Freigeben über


ShapeElement.ZOrder-Eigenschaft

Bestimmt die Reihenfolge, in der diese Form relativ zu anderen Formen im Diagramm angezeigt wird. Normalerweise festgelegt vom Satz der Reihenfolge der untergeordneten Formen.

Namespace:  Microsoft.VisualStudio.Modeling.Diagrams
Assembly:  Microsoft.VisualStudio.Modeling.Sdk.Diagrams.12.0 (in Microsoft.VisualStudio.Modeling.Sdk.Diagrams.12.0.dll)

Syntax

'Declaration
Public Overridable Property ZOrder As Double
public virtual double ZOrder { get; set; }

Eigenschaftswert

Typ: System.Double

Hinweise

Sie werden empfohlen, um den Wert nicht direkt festzulegen, da das Diagramm das ZOrder aller seiner Formen als Teil des Zeichnens festlegt. Stattdessen um die Reihenfolge zu ändern, in der Formen angezeigt, die Formen in NestedChildShapes oder RelativeChildShapes neu anordnen werden und dann shape.Diagram.NeedsRenumber = true auf. Dadurch wird sichergestellt, dass das Diagramm ZOrders das Zurücksetzen. (Siehe nachstehendes Beispiel.)

Beispiele

    /// <summary>
    /// Command to send current shapes to the back.
    /// </summary>
    private void OnMenuSendShapesToBackCommand(object sender, EventArgs e)
    {
      MenuCommand command = sender as MenuCommand;
      Store store = this.CurrentDocData.Store;
      foreach (object selectedItem in this.CurrentSelection)
      {
        ShapeElement shape = selectedItem as ShapeElement;
        if (shape == null || shape.ParentShape == null) continue;
        if (shape.IsNestedChild)
        {
          using (Transaction t = store.TransactionManager.BeginTransaction("sendToBack"))
          {
            // Make the current shape the first in the list.
            shape.ParentShape.NestedChildShapes.Move(shape, 0);
            // Update the ZOrder of the shapes to reflect the change.
            shape.Diagram.NeedsRenumber = true;
            // Make sure the shape is redrawn:
            shape.Invalidate();
            t.Commit();
          }
        }

Um sicherzustellen dass die Form immer oben im Diagramm angezeigt wird, können Sie diese Eigenschaft überschreiben wie folgt.

/// <summary>
/// Gets the relative Z-Order for this ShapeElement.
/// Make sure that my shape stays above all other diagram elements.
///  Add a million to the Z-Order that we are given.
/// </summary>
public override double ZOrder
{
  get
  {
    return base.ZOrder + 1e6;
  }
  // leave set{ } as inherited
}

.NET Framework-Sicherheit

Siehe auch

Referenz

ShapeElement Klasse

Microsoft.VisualStudio.Modeling.Diagrams-Namespace