WPF十六(页面内嵌加载)

在WPF中进行页面内嵌的加载
当存在一定需求时,比如当前页面C左侧是一个A页面,右侧是一个B页面,A页面是一个公用页面时,此时只需要做内嵌A页面,然后B页面进行正常处理,既可以节省时间,又做到了WPF的组件化。
具体处理
当前页面

<ctrls:WpfBaseControl x:Class="C.ScreenC"
             xmlns:sctrls="A">
    <Grid Background="{StaticResource TitleControlsBackgroud}" >
       <TextBlock Text="ceshi A"/>
        <Grid>
            <sctrls:A  DataContext="{Binding ScreenAViewModel}" />
        </Grid>
    </Grid>
</ctrls:WpfBaseControl>

A页面处理
在C中加载A进行的处理:

 xmlns:sctrls="A"

为加载A对应的后台数据命名控件地址

 <sctrls:A  DataContext="{Binding ScreenAViewModel}" />

为加载对应A的xaml需要的数据,当进行绑定A的整个ScreenAViewModel时,就有了A页面xaml加载时所需要的数据源
C页面加载A页面时处理
可以在C页面后台逻辑ViewModel中,当初始化,时候进行实例化A的ViewModel即可创建A所需要的数据源。切记相关数据遵循WPF绑定机制

你可能感兴趣的:(1024程序员节,c#,wpf,开发语言,经验分享,设计模式)