当父类型可以不同时,如何在wpf中访问父类的DataContext?

tec*_*fun 2 wpf datacontext xaml binding

我需要在wpf xaml中访问parent的DataContext.整个xaml页面代码是动态的.所以不知道父母的类型.

我写这个

<Grid DataContext={Binding Path=.}>
Run Code Online (Sandbox Code Playgroud)

它是否正确?

khe*_*ang 5

请记住,如果DataContext未明确设置,它将继承其父级DataContext.如果由于某种原因,这不起作用,你应该看看绑定RelativeSource.

像这样的东西可能会起作用:

<Grid DataContext="{Binding RelativeSource={RelativeSource Mode=FindAncestor, AncestorType={x:Type Window}}, Path=DataContext}}"
Run Code Online (Sandbox Code Playgroud)

鉴于它Grid有一个类型的祖先Window(我认为所有控件都应该有).