首页 > 解决方案 > 在 ScrollViewer 内的图像顶部覆盖网格

问题描述

我有以下标记:

<ScrollViewer>
   <StackPanel Orientation=Vertical>
      <Image />
      <Grid />
      <ItemsControl />
   </StackPanel>
</ScrollViewer>

好的,所以图像是一个动画加载gif。当一个事件完成时,程序也会显示网格和项目控件,用户可以上下滚动。

为了做到这一点,目前我只是将图像设置为Visiblity='Collapsed'and theGridItemsControlto Visible。如何将它们分层,以便图像始终位于下方,并且网格和项目控件位于顶部 - 这样当我淡出网格和项目控件时,图像会出现在下方?

我知道 Z-Index 有一个选项,我尝试将 Image、Grid 和 ItemsControl 放在画布内并设置 Panel.ZIndex 属性,但它似乎不起作用 - 当我将 Grid 上的不透明度设置为 . 5 我看不到下面的图像,而且 Grid 也没有填充空间(我需要它拉伸到表格的大小)。

标签: c#wpfgrid

解决方案


这应该有效:

<ScrollViewer>
    <Grid>
        <Image/>
        <StackPanel>
            <Grid/>
            <ItemsControl/>
        </StackPanel>
    </Grid>
</ScrollViewer>

推荐阅读