Xaml 在windows应用商店应用程序中将视图模型从页面传递到用户控件
在Windows应用商店拆分应用程序中,我希望将视图模型从页面传递给用户控件。这个场景是,我想在多个页面中重用一些常见的xaml,使用像视图这样的UserControl 在主页中:Xaml 在windows应用商店应用程序中将视图模型从页面传递到用户控件,xaml,windows-store-apps,Xaml,Windows Store Apps,在Windows应用商店拆分应用程序中,我希望将视图模型从页面传递给用户控件。这个场景是,我想在多个页面中重用一些常见的xaml,使用像视图这样的UserControl 在主页中: <common:LayoutAwarePage ... DataContext="{Binding ViewModel, RelativeSource={RelativeSource Self}}" ... > <views:MyUserControlView Model
<common:LayoutAwarePage
...
DataContext="{Binding ViewModel, RelativeSource={RelativeSource Self}}"
... >
<views:MyUserControlView Model="{Binding ViewModel}" />
...
永远不会调用模型设定器。如何将用户控件连接到父页面的视图模型
或者,有没有更好的方法来实现页面中使用的共享视图
谢谢
-约翰正确的装订应该是:
<views:MyUserControlView Model="{Binding}" />
您已经为上面的页面设置了DataContext
。所有绑定都与当前的DataContext
相关
尽管如此,二传手仍然不会被召唤。它只是从代码访问dependencProperty
的包装器。绑定将直接调用SetValue
根据您的需求,您甚至可能不需要定义自己的模型
dependencProperty
。每个控件自动从其父控件继承DataContext
。在上面的示例中,用户控件已将其DataContext
设置为与页面相同的视图模型
<views:MyUserControlView Model="{Binding}" />