写点什么

拥有完整硬件访问权限的本地 Silverlight

  • 2012-04-12
  • 本文字数:909 字

    阅读完需:约 3 分钟

Silverlight Embedded 是专门为嵌入式设备设计的,那些设备不一定拥有网络连接能力,或者只会偶尔连接。它选择 XAML 作为 UI 层,从而嵌入式系统的设计师和开发人员可以实现工作的分离,就像.NET 和 Web 开发人员一样。但是硬件的限制意味着本地编程语言更适合。

重要的是要注意到这并不是 Windows 8 或者 WinRT。Silverlight Embedded 拥有对操作系统暴露出来的 Win32 API 以及硬件的完整访问权限。在 Silverlight 之下,所有遗留的 Windows Embedded 类库都可以继续使用。

也就是说,它们之间有类似之处。例如,通过 DirectDraw 或者 OpenGL 提供了硬件加速图形(Hardware accelerated graphics),但那并不是必须的。在Silverlight Embedded 中可以使用一般的XAML 绑定表达式支持数据绑定。在代码端,模型需要实现 IXRPropertyBag 接口而不是 INotifyPropertyChanged。想要了解其他区别,你可以查看 Silverlight 3 和 Silverlight Embedded 之间的比较一文。

Silverlight for Embedded 的第一个版本是为 Windows Embedded CE 6 Release 3 发布的。这个版本拥有基于 Silverlight 2 的 API。下一个版本针对 Windows Embedded Compact 7,它会使用 Silverlight 3 的 API。第一个版本的工具很粗糙,但是微软声称新的版本会更加成熟。想要开始使用它,所需工具有:

  • Visual Studio 2008
  • Expression Blend 3
  • Silverlight for Embedded SDK
  • Platform Builder 7

platform builder 是特别引入的: 这个工具会为 Expression Blend 的 Silverlight/XAML 项目创建 C++ 项目的框架。在运行工具之前,需要对将要访问的控件命名,并注册事件处理程序。表示它们的字段和回调函数会在得到的 C++ 头文件和代码文件中自动生成。当 XAML 发生改变时,就需要重新应用工具以更新生成的代码。

在 Silverlight Embedded 还提供了像动画之类的功能。故事板(storyboard)是在 Expression Blend 中创建的,就像你构建 Silverlight for web 或者 Silverlight for Windows Phone 应用程序一样。当然,我们必须小心避免使用对于目标硬件过于复杂的动画。你可以在视频创建和使用Silverlight for Embedded 应用程序中看到演示。

查看英文原文: A Native of Silverlight with Full Hardware Access

2012-04-12 09:212309
用户头像

发布了 340 篇内容, 共 145.3 次阅读, 收获喜欢 13 次。

关注

评论

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

干货丨如何使用Redash连接DolphinDB数据源

DolphinDB

数据处理 时序数据库 DolphinDB 数据库开发 redash

架构师 3 期 3 班 -week4- 作业

zbest

作业 week4

几款Java开发者必备常用的工具,准点下班不在话下

华为云开发者联盟

Java 工具 开发

LeetCode题解:127. 单词接龙,双向BFS,JavaScript,详细注释

Lee Chen

算法 大前端 LeetCode

5张图搞懂Java引用拷贝、深拷贝、浅拷贝

bigsai

Java 浅拷贝和深拷贝

架构师训练营 1 期 -- 第十三周总结

曾彪彪

极客大学架构师训练营

盘点2020 | 一个三线程序员的2020年,不卑不亢

沉默王二

程序员 盘点2020 沉默王二

PostgreSQL高可用:多主复制解决方案

PostgreSQLChina

数据库 postgresql 开源

985研究生熬夜23天吃透845页架构宝典 终收割腾讯Java岗offer!再也不用怀疑人生了

比伯

Java 编程 架构 面试 程序人生

从面试角度分析LinkedList源码

Java旅途

Java List 集合 linkedlist

90分钟10个手写案例,从源码底层给你讲解7种线程池创建方式

996小迁

Java 源码 架构 资料 笔记

Tufin联合Cisco,将网络安全自动化进行到底

Geek_448e23

网络安全 自动化管理 云安全

盘点2020 | 微服务架构下该如何技术选型呢?

xcbeyond

微服务 技术选型 盘点2020 选型原则

建议收藏,mybatis插件原理详解

田维常

mybatis

《O2O实战:他们是如何利用互联网的》.pdf

田维常

互联网

从阿里离职后人虚了,头也秃了,就剩这份Java性能优化的PDF了

Java架构追梦

Java 架构 面试 性能优化 并发

扩招1W人,字节跳动内部公开12月份Java岗71道面试题

比伯

Java 编程 架构 面试 程序人生

阿里华为等大厂如何处理数值精度/舍入/溢出问题

Java架构师迁哥

OpenKruise v0.7.0 版本发布:新增周期任务分发控制器

阿里巴巴云原生

阿里云 容器 开发者 运维 云原生

盘点2020|多线程的遥感大数据行业产品经历

老壳有点爽

大数据 盘点2020 InSAR

边缘计算和5G:我们从何而来?

VoltDB

云计算 大数据 5G 物联网 边缘计算

forsage以太坊矩阵系统软件开发|forsage以太坊矩阵APP开发

系统开发

架构师训练营第 13 周学习总结

netspecial

极客大学架构师训练营

女朋友突然问我DNS是个啥....

乱敲代码

计算机网络 DNS DNS服务器

程序员因重复记录日志撑爆ELK被辞退!

Java架构师迁哥

Mysql中,1=1和 1=1=1 和 -1=-1 和 -1=-1=-1 和 5=5 和 5=5=5 有什么区别

Geek_de9857

MySQL sql 返回值 1=1=1 -1=1=1

等保数据备份和恢复关键点,这些你该知道!

华为云开发者联盟

数据 容灾 恢复

架构师训练营第 1 期第 13 周作业

业哥

智能微卡口监控系统搭建,智慧平安小区建设解决方案

t13823115967

智慧城市

DAPP软件系统开发

系统开发

flink 使用curl,通过RESTful api,上传和删除jar包

Geek_de9857

flink RESTful curl 上传jar 删除jar

拥有完整硬件访问权限的本地Silverlight_C++_Jonathan Allen_InfoQ精选文章