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

相关推荐
Meteors.7 分钟前
23种设计模式——责任链模式(Chain of Responsibility Pattern)
设计模式·责任链模式
xqlily27 分钟前
Kotlin:现代编程语言的革新者
android·开发语言·kotlin
o0向阳而生0o1 小时前
107、23种设计模式之观察者模式(16/23)
观察者模式·设计模式
csbysj20201 小时前
XSLT Apply:深入解析XSLT在XML转换中的应用
开发语言
不会kao代码的小王1 小时前
突破机房围墙:openEuler设备的公网管理实战指南
开发语言·数据库·笔记
CodeCraft Studio1 小时前
CAD文件处理控件Aspose.CAD教程:在 Python 中将 SVG 转换为 PDF
开发语言·python·pdf·svg·cad·aspose·aspose.cad
c#上位机1 小时前
wpf之MVVM中只读属性更新界面
c#·wpf·mvvm
就是有点傻1 小时前
WPF自定义控件之环形进度条
wpf
He BianGu1 小时前
【笔记】WPF中如何的动态设置DataGridTextColumn是否显示
笔记·wpf
消失的旧时光-19432 小时前
人脸跟随 ( Channel 实现(缓存5条数据 + 2度过滤 + 平滑移动))
android·java·开发语言·kotlin