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

相关推荐
何以解忧,唯有..5 分钟前
Python 异常处理完全指南:从基础到高级实践
开发语言·前端·python
gugucoding22 分钟前
57. 【Java】日志框架:SLF4J与Logback
java·开发语言·logback
此生决int28 分钟前
深入理解C++系列(15)——AVL树
开发语言·c++
筱璦40 分钟前
PHP+ VUE3机构级股票分仓管理交易系统源码可出
开发语言·php·vue3·量化·股票分仓
爱奥尼欧43 分钟前
10.C++ string 实现详解
java·开发语言·c++
骇客野人1 小时前
Java分布式任务调度方案(完整落地指南)
java·开发语言·分布式
JacksonMx1 小时前
Spring @Async 坑点 + 改造方案
java·开发语言
米饭不加菜1 小时前
C51 语言参考手册
经验分享·笔记·单片机·嵌入式硬件
你怎么知道我是队长1 小时前
IPv6 地址完全解析:从结构到实战
开发语言·php
Dovis(誓平步青云)1 小时前
牛奶不能减成负数:冰箱库存的筛选、去重与不可变更新
android·java·开发语言