Panel.ZIndex 附加属性

定义

获取或设置一个值,该值表示元素在 Z 平面中的显示顺序。

see GetZIndex, and SetZIndex
see GetZIndex, and SetZIndex
see GetZIndex, and SetZIndex

示例

下面的示例演示如何使用可扩展应用程序标记语言 (XAML) 和代码设置 属性的值 ZIndex


// Create the application's main window
mainWindow = gcnew Window();
mainWindow->Title = "Canvas ZIndex Sample";

// Create the Canvas
myCanvas = gcnew Canvas();

// Create the child Rectangle elements
myRectangle1 = gcnew Rectangle();
myRectangle2 = gcnew Rectangle();
myRectangle3 = gcnew Rectangle();
myRectangle4 = gcnew Rectangle();
myRectangle5 = gcnew Rectangle();
myRectangle6 = gcnew Rectangle();

// Set properties on the Rectangle elements
Canvas::SetTop(myRectangle1, 100);
Canvas::SetLeft(myRectangle1, 100);
Canvas::SetZIndex(myRectangle1, 3);
myRectangle1->Fill = Brushes::Blue;
myRectangle1->Width = 100;
myRectangle1->Height = 100;

Canvas::SetTop(myRectangle2, 150);
Canvas::SetLeft(myRectangle2, 150);
Canvas::SetZIndex(myRectangle2, 1);
myRectangle2->Fill = Brushes::Yellow;
myRectangle2->Width = 100;
myRectangle2->Height = 100;

Canvas::SetTop(myRectangle3, 200);
Canvas::SetLeft(myRectangle3, 200);
Canvas::SetZIndex(myRectangle3, 2);
myRectangle3->Fill = Brushes::Green;
myRectangle3->Width = 100;
myRectangle3->Height = 100;

Canvas::SetTop(myRectangle4, 300);
Canvas::SetLeft(myRectangle4, 200);
Canvas::SetZIndex(myRectangle4, 1);
myRectangle4->Fill = Brushes::Green;
myRectangle4->Width = 100;
myRectangle4->Height = 100;

Canvas::SetTop(myRectangle5, 350);
Canvas::SetLeft(myRectangle5, 150);
Canvas::SetZIndex(myRectangle5, 3);
myRectangle5->Fill = Brushes::Yellow;
myRectangle5->Width = 100;
myRectangle5->Height = 100;

Canvas::SetTop(myRectangle6, 400);
Canvas::SetLeft(myRectangle6, 100);
Canvas::SetZIndex(myRectangle6, 2);
myRectangle6->Fill = Brushes::Blue;
myRectangle6->Width = 100;
myRectangle6->Height = 100;

// Add the Rectangles to the Canvas' Children collection
myCanvas->Children->Add(myRectangle1);
myCanvas->Children->Add(myRectangle2);
myCanvas->Children->Add(myRectangle3);
myCanvas->Children->Add(myRectangle4);
myCanvas->Children->Add(myRectangle5);
myCanvas->Children->Add(myRectangle6);

// Add the Canvas as the Content of the parent Window Object
mainWindow->Content = myCanvas;
mainWindow->Show();

// Create the application's main window
mainWindow = new Window ();
mainWindow.Title = "Canvas ZIndex Sample";

// Create the Canvas
myCanvas = new Canvas();

// Create the child Rectangle elements
myRectangle1 = new Rectangle();
myRectangle2 = new Rectangle();
myRectangle3 = new Rectangle();
myRectangle4 = new Rectangle();
myRectangle5 = new Rectangle();
myRectangle6 = new Rectangle();

// Set properties on the Rectangle elements
Canvas.SetTop(myRectangle1, 100);
Canvas.SetLeft(myRectangle1, 100);
Canvas.SetZIndex(myRectangle1, 3);
myRectangle1.Fill = Brushes.Blue;
myRectangle1.Width = 100;
myRectangle1.Height = 100;

Canvas.SetTop(myRectangle2, 150);
Canvas.SetLeft(myRectangle2, 150);
Canvas.SetZIndex(myRectangle2, 1);
myRectangle2.Fill = Brushes.Yellow;
myRectangle2.Width = 100;
myRectangle2.Height = 100;

Canvas.SetTop(myRectangle3, 200);
Canvas.SetLeft(myRectangle3, 200);
Canvas.SetZIndex(myRectangle3, 2);
myRectangle3.Fill = Brushes.Green;
myRectangle3.Width = 100;
myRectangle3.Height = 100;

Canvas.SetTop(myRectangle4, 300);
Canvas.SetLeft(myRectangle4, 200);
Canvas.SetZIndex(myRectangle4, 1);
myRectangle4.Fill = Brushes.Green;
myRectangle4.Width = 100;
myRectangle4.Height = 100;

Canvas.SetTop(myRectangle5, 350);
Canvas.SetLeft(myRectangle5, 150);
Canvas.SetZIndex(myRectangle5, 3);
myRectangle5.Fill = Brushes.Yellow;
myRectangle5.Width = 100;
myRectangle5.Height = 100;

Canvas.SetTop(myRectangle6, 400);
Canvas.SetLeft(myRectangle6, 100);
Canvas.SetZIndex(myRectangle6, 2);
myRectangle6.Fill = Brushes.Blue;
myRectangle6.Width = 100;
myRectangle6.Height = 100;

// Add the Rectangles to the Canvas' Children collection
myCanvas.Children.Add(myRectangle1);
myCanvas.Children.Add(myRectangle2);
myCanvas.Children.Add(myRectangle3);
myCanvas.Children.Add(myRectangle4);
myCanvas.Children.Add(myRectangle5);
myCanvas.Children.Add(myRectangle6);

// Add the Canvas as the Content of the parent Window Object
mainWindow.Content = myCanvas;
mainWindow.Show ();
<Page xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" WindowTitle="ZIndex Sample">
  <Canvas>
    <Rectangle Canvas.ZIndex="3" Width="100" Height="100" Canvas.Top="100" Canvas.Left="100" Fill="blue"/>
    <Rectangle Canvas.ZIndex="1" Width="100" Height="100" Canvas.Top="150" Canvas.Left="150" Fill="yellow"/>
    <Rectangle Canvas.ZIndex="2" Width="100" Height="100" Canvas.Top="200" Canvas.Left="200" Fill="green"/>

    <!-- Reverse the order to illustrate z-index property -->

    <Rectangle Canvas.ZIndex="1" Width="100" Height="100" Canvas.Top="300" Canvas.Left="200" Fill="green"/>
    <Rectangle Canvas.ZIndex="3" Width="100" Height="100" Canvas.Top="350" Canvas.Left="150" Fill="yellow"/>
    <Rectangle Canvas.ZIndex="2" Width="100" Height="100" Canvas.Top="400" Canvas.Left="100" Fill="blue"/>
  </Canvas>
</Page>

注解

给定 element的 越大value,就越有可能element出现在前台。 同样,如果 element 具有相对较低 value的 , element 则 可能会出现在背景中。 例如,elementvalue具有 5 的 将出现在值为 4 的 的上方elementvalue,而该值又出现在值为 3 的 上方element,依此而行。 允许使用负值,并且它们继续此优先模式。

Children具有相等ZIndex值的集合的成员按它们在可视化树中的显示顺序呈现。 可以通过循环访问集合的成员来确定子元素的 Children 索引位置。

依赖项属性信息

标识符字段 ZIndexProperty
元数据属性设置为 true

适用于