【AICon】AI 基础设施、LLM运维、大模型训练与推理,一场会议,全方位涵盖! >>> 了解详情
写点什么

.NET 4.6 中的 WPF

  • 2015-04-28
  • 本文字数:921 字

    阅读完需:约 3 分钟

尽管“WPF 已死”的谣言甚嚣尘上,但微软却并没有停止 WPF 开发的脚步。在.NET 4.6 及未来版本的 WPF 中一共有四个主要的发展方向:

  • 性能
  • 与 DirectX 的集成
  • 支持现代硬件
  • 工具

在具体谈到这四个方面之前,先让我们谈谈关于支持的问题。微软之前曾经多次在没有经过充分调研的情况下,武断地关闭了一些关于 WPF 及其它类库的 bug 报告,更不要说修复它们了。这种态度招致了大量的指责。而作为 4.6 版本路线图中的一部分,微软将重新打开在 Connect 中所记录的、投票数达到或超过 10 的所有 bug。虽然这种做法无法弥补之前的过失,但至少表现出微软已经开始认真地对待社区的反馈声音了。

从长期的计划来看,对.NET 4.5.2 中的 WPF 的支持将一直持续到 2024 年。究其原因,是因为.NET 以及 WPF 被看作是一种操作系统组件,因此它们也自动获得了与操作系统相同的支持周期。

触摸的支持

对触摸的支持改进主要专注于可靠性与性能等方面,尤其是在 UI 线程处于忙碌状态的情况下。对于多点触摸的事件报告也应当做到更加可靠。

滚动与虚拟化

WPF 的基础特色之一在于它可以对某个列表中的控件进行虚拟化。从理论上说,这种方式可以允许在列表中包含超过 1 万个列表项。而在实际中,有一系列的原因会造成虚拟化的失败。其中之一在于过多的布局循环造成的系统悬挂,而在 WPF 4.6 中有望解决这一问题。

透明的子窗体

在 Windows 8 中新增了将子窗体标注为透明的功能,这一行为也加入到 WPF 的功能中。要实现这一点,需要在某个清单文件中注明该应用将使用 Windows 8 中的特性。如果该应用程序运行在 Windows 7 机器上,虽然不会抛出任何异常,但子窗体无法显示为透明状态。

高 DPI 问题

WPF 现在已经理解支持多种分辨率的光标文件了。在加载某个光标文件时,你需要将使用 DPI 用于比例尺(scale)这一参数设置为“true”,以使这一特性生效。之前,你可以使用某个临时方案以解决这一限制,即手动检测 DPI,并加载正确的光标图片。

另一个高 DPI 问题与在例如组合框等控件中背景的绘制方式有关。其中的 bug 会造成边框被切等现象,但虽然这个 bug 本身与所使用的 DPI 无关,但只有在高 DPI 的情况下这个 bug 才会显现出来。

明天我们将继续讨论 WPF 的长期计划,包括 WPF 应用本地化。

查看英文原文: WPF in .NET 4.6

2015-04-28 07:343228
用户头像

发布了 428 篇内容, 共 172.3 次阅读, 收获喜欢 38 次。

关注

评论

发布
暂无评论
发现更多内容

StarRocks 技术内幕 | 基于全局字典的极速字符串查询

StarRocks

数据库

前端监控系列2 |聊聊 JS 错误监控那些事儿

字节跳动终端技术

APM 前端监控 火山引擎 JS错误

【Django | allauth】登录_注册_邮箱验证_密码邮箱重置

计算机魔术师

8月月更

Vue3知识点梳理(一)

青柚1943

Vue3

终究还是错付了!这2种Python字符串格式化的写法已经被淘汰了,你是不是还在用?

程序员晚枫

Python 字符串 格式化

如何给玩偶建模并让它跳个舞?

HMS Core

MobPush丨iOS端SDK API

MobTech袤博科技

ios API MobTech袤博科技 mobpush

C#/VB.NET: 改变Word中的字体颜色

Geek_249eec

C# word VB.NET 改变字体颜色

兆骑科创创新创业服务平台,海内外高层次人才引进,活动赛事

兆骑科创凤阁

昇思MindSpore 1.8:丰富的算法集与套件,实现高性能训练,降低部署门槛

科技热闻

兆骑科创创服平台,招商引资,招才引智,投融资对接

兆骑科创凤阁

RT-Thread记录(九、RT-Thread 中断处理与阶段小结)

矜辰所致

RT-Thread 8月月更

微服务性能分析|Pyroscope 在 Rainbond 上的实践分享

北京好雨科技有限公司

Kubernetes 微服务 云原生

创新能力加速产业发展,SphereEx 荣获“中关村银行杯”『大数据与云计算』领域 TOP1

SphereEx

数据库 开源 架构 SphereEx Apache ShardingSphere

开源一夏|OpenHarmony之如何实现震动

坚果

开源 OpenHarmony 8月月更

业务数据迁移上云的一些技术思考

京东科技开发者

MySQL 迁移 云数据库Redis

Android进阶(十六)子线程调用Toast报Can‘t create handler inside thread that has not called Looper.prepare() 错误

No Silver Bullet

android 8月月更 toast

五大数据安全保障措施看这里!

行云管家

信息安全 数据安全 企业安全 数据库审计

【Django | allauth】重写allauth重置密码方法

计算机魔术师

8月月更

语音直播系统源码——解决应用瘦身问题

开源直播系统源码

软件开发 语聊房 语音直播系统 语音直播系统连麦

2022BATJ1000道Java面试题解析,已有372人上岸(必看攻略)

程序知音

Java 程序员 java面试 后端技术 Java八股文

【Django | allauth】useprofile 用户模型扩展

计算机魔术师

8月月更

开源一夏 | 实战Node.js原理对于阻塞和EventEmitter及其继承的运用心得

恒山其若陋兮

开源 8月月更

Go 事,Gopher 要学的数字类型,变量,常量,运算符 ,第2篇

梦想橡皮擦

Python 爬虫 8月月更

架构实战营模块九作业

Geek_Q

推荐一款微软出品的开发神器,体验不输IDEA!(含参考资料和项目源码)

收到请回复

面试 springboot 应届生 金九银十 java项目实战分享

Linux下玩转nginx系列(八)---如何使用upsync模块实现动态负载均衡

anyRTC开发者

nginx Linux 负载均衡 音视频 服务器

鄢贵海:DPU发展中的四个关键问题

硬科技星球

大咖说·对话开源|企业如何用好开源数据库

大咖说

开源 企业数据库

精益+敏捷,两大管理思路让研发效能「飞」起来

万事ONES

出海浪潮下,Edgio引领CDN安全新风向!

科技热闻

.NET 4.6中的WPF_语言 & 开发_Jonathan Allen_InfoQ精选文章