WPF十六(页面内嵌加载)

在WPF中进行页面内嵌的加载

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

当前页面

csharp 复制代码
<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进行的处理:

csharp 复制代码
 xmlns:sctrls="A"

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

csharp 复制代码
 <sctrls:A  DataContext="{Binding ScreenAViewModel}" />

为加载对应A的xaml需要的数据,当进行绑定A的整个ScreenAViewModel时,就有了A页面xaml加载时所需要的数据源
C页面加载A页面时处理

可以在C页面后台逻辑ViewModel中,当初始化,时候进行实例化A的ViewModel即可创建A所需要的数据源。切记相关数据遵循WPF绑定机制

相关推荐
牛奶咖啡132 分钟前
学习设计模式《十二》——命令模式
学习·设计模式·命令模式·队列请求·宏命令·可撤销恢复操作·参数化配置
GISer_Jing9 分钟前
Three.js中AR实现详解并详细介绍基于图像标记模式AR生成的详细步骤
开发语言·javascript·ar
委婉待续11 分钟前
Qt的学习(一)
开发语言·qt·学习
笨笨马甲12 分钟前
Qt Quick Layout功能及架构
开发语言·qt
Dovis(誓平步青云)21 分钟前
探索C++标准模板库(STL):String接口的底层实现(下篇)
开发语言·c++·stl·string
海棠一号25 分钟前
JAVA理论第五章-JVM
java·开发语言·jvm
哆啦A梦的口袋呀1 小时前
基于Python学习《Head First设计模式》第七章 适配器和外观模式
python·学习·设计模式
何中应1 小时前
【设计模式-5】设计模式的总结
java·后端·设计模式
草莓熊Lotso1 小时前
【数据结构初阶】--算法复杂度的深度解析
c语言·开发语言·数据结构·经验分享·笔记·其他·算法
海的诗篇_1 小时前
前端开发面试题总结-JavaScript篇(二)
开发语言·前端·javascript·typescript