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绑定机制

相关推荐
潜创微科技25 分钟前
IT6520:USB-C 转 MIPI 高集成控制器,DP 1.4a 转 MIPI 单芯片搞定 4K120 显示
c语言·开发语言·低延迟·掌机·联阳
Escalating_xu1 小时前
【System V 信号量】从 P/V 原语到 Builder 封装:写出可控、可清理的进程互斥组件
java·linux·开发语言·jvm
傲世仙尊1 小时前
System V 进程间通信详解:共享内存、消息队列与信号量(CSDN博客)
linux·开发语言·c++
cvby1 小时前
C++11
开发语言·c++
ch.ju2 小时前
Java—idea知识:如何创建新项目
java·开发语言·intellij-idea
Evand J2 小时前
【MATLAB例程,图像滤波降噪12】加权中值滑动窗口滤波(WMF)图像降噪,包含滤波质量评价。附代码下载链接
开发语言·图像处理·人工智能·计算机视觉·matlab·滑动窗口·滤波
Tairitsu_H3 小时前
[C++] C++11类和STL的新特性
开发语言·c++·stl·c++11
承渊政道3 小时前
Python IDLE鸿蒙PC适配全记录:从Tkinter桌面程序到ArkUI原生开发闭环
开发语言·python·harmonyos·鸿蒙系统·桌面程序
YMWM_3 小时前
查看realsense相机序列号脚本
开发语言·python·数码相机
银空飞羽3 小时前
职型求职工具实测:把简历分析、岗位匹配和定向优化串成一条求职链路
人工智能·经验分享·面试·职场和发展·跳槽·求职招聘·创业创新