news 2026/5/30 23:11:14

WPF xaml中的 xmlns:d=“http://schemas.microsoft.com/expression/blend/2008“ 的使用

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
WPF xaml中的 xmlns:d=“http://schemas.microsoft.com/expression/blend/2008“ 的使用

在编辑界面代码时,我发现一行代码:

d:DataContext="{d:DesignInstance Type={x:Type localVM:EmbossingActionConfigPageViewModel}, IsDesignTimeCreatable=False}"

关于其中的DataContext的指定逻辑让我很疑惑。

因为我在C#代码中也指定了DataContext,给我的感觉就是这里的d:DataContext=...并没有起作用,以下是学习到的知识点:

各部分含义:

  1. d:命名空间

    • 这是设计时命名空间,通常定义为:

    xmlns:d="http://schemas.microsoft.com/expression/blend/2008"

    • 只在设计时生效,运行时会被忽略

  2. d:DataContext

    • 仅为设计器设置数据上下文

    • 不会影响运行时的实际DataContext

  3. d:DesignInstance

    • 一个特殊的标记扩展,创建设计时实例

  4. Type={x:Type localVM:EmbossingActionConfigPageViewModel}

    • 指定要使用的ViewModel类型

    • localVM是ViewModel的命名空间前缀

  5. IsDesignTimeCreatable=False

    • 重要参数!表示不真正创建ViewModel实例

    • 只使用类型元数据提供智能感知

实际作用

1.提供智能感知

<!-- 在设计器中,你可以这样绑定: --> <TextBox Text="{Binding ViewModelProperty}" /> <!-- ↑ 输入时会有ViewModel属性的智能感知提示 -->

2.设计时预览

<!-- 如果 IsDesignTimeCreatable=True --> d:DataContext="{d:DesignInstance Type=localVM:MyViewModel, IsDesignTimeCreatable=True}"

会实际创建ViewModel实例,可以:

  • 预览真实数据

  • 看到控件样式

  • 测试布局

3.与运行时DataContext的关系

<!-- 典型用法 --> <UserControl x:Class="MyView" xmlns:d="http://schemas.microsoft.com/expression/blend/2008" d:DataContext="{d:DesignInstance Type=localVM:MyViewModel, IsDesignTimeCreatable=False}" DataContext="{Binding MyViewModel, Source={StaticResource Locator}}"> <!-- 设计时:使用d:DataContext获取智能感知 运行时:使用实际的DataContext绑定 --> </UserControl>
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/5/28 20:39:45

第21届全国大学生智能汽车竞赛提问与回答:飞跃雷区组别

第二十一届全国大学生智能汽车竞赛比赛规则第21届全国大学生智能汽车竞赛提问于回答&#xff08;总入口&#xff09;第21届智能车竞赛飞跃雷区组比赛车模与比赛场地说明 01 提问与回答 2月份 序号提问回答备注1卓大&#xff0c;飞越雷区中用于驱动车辆识别的led的芯片必须是用…

作者头像 李华
网站建设 2026/5/27 23:43:35

深度学习实战119-AI大模型+Agent重塑医疗行业:智能诊疗助手项目完整代码实战

文章目录 引言:从一次误诊经历说起 项目背景与需求分析 医疗AI的现状与挑战 项目目标与功能规划 技术架构设计 环境准备与依赖安装 核心Agent架构实现 基础组件定义 医疗领域提示模板设计 Agent状态管理 医疗知识库构建与检索 知识库架构设计 知识库数据准备 Agent工具系统实现…

作者头像 李华
网站建设 2026/5/28 19:39:05

网络安全:一个让你后悔5年,和不入行后悔50年的选择

网络安全不仅作为当下应届生收入较高的专业之一&#xff0c;网络安全在转行领域也占据了热门位置&#xff0c;主要具备以下几点转行优势。 行业人才缺口大&#xff0c;到2027年我国网安人才缺口将达327万知识体系友好&#xff0c;计算机及英语水平相对薄弱的同学也可学习上手入…

作者头像 李华
网站建设 2026/5/28 14:14:20

2026年EOR名义雇主服务TOP3推荐榜单,为企业国际化赋能

EOR名义雇主服务在全球化过程中扮演着重要角色。它不仅帮助企业在新的市场中快速合规&#xff0c;也简化了人力资源管理。通过与专业的服务商合作&#xff0c;企业可以有效处理薪资、合同及员工管理。这些服务商通常提供一站式解决方案&#xff0c;确保企业在不同国家的运营符合…

作者头像 李华
网站建设 2026/5/28 14:14:10

非科班转网络安全,是逆袭捷径还是“野路子”深坑?欢迎讨论!

本文将从市场需求、技能体系、学习路径、职业发展等维度&#xff0c;全方位探讨非科班背景人员学习网络安全的可行性、挑战与机遇&#xff0c;旨在为徘徊在门槛外的初学者提供一份客观、理性的参考指南。 引言&#xff1a;热潮下的冷思考 “网络安全人才缺口数百万”、“年薪…

作者头像 李华
网站建设 2026/5/28 18:45:48

铁路轨道分割数据集labelme格式2234张1类别

数据集格式&#xff1a;labelme格式(不包含mask文件&#xff0c;仅仅包含jpg图片和对应的json文件) 图片数量(jpg文件个数)&#xff1a;2234 标注数量(json文件个数)&#xff1a;2234 标注类别数&#xff1a;1 标注类别名称:["rail"] 每个类别标注的框数&#x…

作者头像 李华