ShapeElement.ZOrder - свойство
Определяет порядок, в котором эта форма будет отображаться по отношению к другим фигурам на схеме.Обычно устанавливать от порядка фигур дочернего элемента.
Пространство имен: Microsoft.VisualStudio.Modeling.Diagrams
Сборка: Microsoft.VisualStudio.Modeling.Sdk.Diagrams.11.0 (в Microsoft.VisualStudio.Modeling.Sdk.Diagrams.11.0.dll)
Синтаксис
'Декларация
Public Overridable Property ZOrder As Double
public virtual double ZOrder { get; set; }
Значение свойства
Тип: System.Double
Заметки
Вы рекомендуется установить значение напрямую, поскольку схема задает ZOrder всех фигур в процессе рисования.Вместо этого для изменения порядка, в котором отображаются, повторно упорядочить фигуры в фигуры NestedChildShapesOR RelativeChildShapes, а затем вызовите shape.Diagram.NeedsRenumber = true.Это гарантирует, что схема сбросит ZOrders.См. следующий пример.
Примеры
/// <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();
}
}
Чтобы убедиться в том, что ваша форма всегда отображаются в верхней части схемы можно переопределить это свойство выглядит следующим образом.
/// <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
- Полное доверие для непосредственно вызывающего метода. Этот член не может быть использован частично доверенным кодом. Дополнительные сведения см. в разделе Использование библиотек из не вполне надежного кода.
См. также
Ссылки
Microsoft.VisualStudio.Modeling.Diagrams - пространство имен