AI实践哪家强?来 AICon, 解锁技术前沿,探寻产业新机! 了解详情
写点什么

拥有完整硬件访问权限的本地 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:212140
用户头像

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

关注

评论

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

模块六作业-拆分电商系统为微服务

CH

#架构实战营 「架构实战营」

Promise 基本方法的简单实现

编程三昧

JavaScript Promise 2月月更

ReactNative进阶(四十四):Mobile App 适配性优化

No Silver Bullet

React Native 适配 1月月更

行业研究流程及资源总结

轻口味

android AI 1月月更

从 TDD 到测试策略

Teobler

前端 TDD 单元测试 测试策略 测试金字塔

树概念总结

en

数据结构

TTF、OTF、WOFF 和 WOFF2 的相关概念

编程三昧

CSS css3 1月月更

JAVA新特性的入场券-函数式接口

蜜糖的代码注释

Java 后端 Java高级特性

Mybatis技术专题之MybatisPlus自带强大功能之多租户插件实现原理和实战分析

码界西柚

多租户 MyBatisPlus 2月日更 多租户技术

Java NIO为何导致堆外内存OOM了?

JavaEdge

2月月更

Kubectl插件开发及开源发布分享| 社区征文

雪雷

golang 云原生 cobra kubectl plugin 新春征文

Windows 和 Linux 上安装 TTF 字体的方法

编程三昧

HTML5, CSS3 1月月更

Kubernetes初学者指南

俞凡

架构 Kubernetes 云原生 2月月更

在线格式时间计算时间差

入门小站

工具

从IaC到IaD

俞凡

云计算 基础设施即代码

【优化技术专题】「系统性能调优实战」终极关注应用系统性能调优及原理剖析(下册)

码界西柚

性能调优 Java 分布式 优化逻辑 技术职场 1月日更

2021,平(jia)凡(ban)的一年

xiezhr

年终总结 2021 2021年终总结

简单入门计算机网络

宇宙之一粟

计算机网络 2月月更

Linux之killall命令

入门小站

Linux

Linux之kill命令

入门小站

Linux

ReactNative进阶(四十三):Mac 通过 .bash_profile 文件配置环境变量

No Silver Bullet

Mac 2月月更 .bash_profile

ReactNative进阶(四十六):移动端实现字体自适应

No Silver Bullet

自适应 React Native 2月月更

Java9特性-响应式流(Reactive Stream)

蜜糖的代码注释

Java 响应式 响应式编程 2月月更

浅谈 Java 集合框架

宇宙之一粟

java集合总结 1月月更

WebRTC 流媒体常见开源方案综述 | 社区征文

liuzhen007

音视频 新春征文 2月月更

我的2021

劼哥stone

年终总结

特征工程:归一化与标准化

强劲九

Python 人工智能 神经网络 机器学习 scikit-learn

我所理解的云原生(二)

劼哥stone

云原生

2021年度总结-拥抱变化

wood

300天创作

云原生的前世今生(一)

劼哥stone

云原生

第六周作业

cqyanbo

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