绑定祖先的属性

你可以使用 RelativeSource 绑定绑定到可视树中的祖先属性。可视树中具有相同类型或从你指定的类型派生的最近控件将用作绑定的源:

<Grid Background="Blue">
    <Grid Background="Gray" Margin="10">
        <Border Background="Red" Margin="20">
            <StackPanel Background="White" Margin="20">
                <Button Margin="10" Content="Button1" Background="{Binding Background, RelativeSource={RelativeSource Mode=FindAncestor, AncestorType={x:Type Grid}}}" />
                <Button Margin="10" Content="Button2" Background="{Binding Background, RelativeSource={RelativeSource Mode=FindAncestor, AncestorType={x:Type FrameworkElement}}}" />
            </StackPanel>
        </Border>
    </Grid>
</Grid>

在此示例中, Button1 具有灰色背景,因为最接近的 Grid 祖先具有灰色背景。 Button2 具有白色背景,因为从 FrameworkElement 派生的最近的祖先是白色 StackPanel

StackOverflow 文档