使用 Silverlight 的 Windows 应用程序
我想在 silverlight 中开发一个基于 Windows 的应用程序。我浏览了很多文章,每次都发现“Silverlight 适用于基于 Web 的应用程序”。我不知道我是错还是对,因为我的上级告诉我,在Silverlight5中我们可以开发基于Windows的应用程序。任何人都可以帮助我提供如何开始的线索吗?任何帮助将不胜感激。
提前致谢
I want to develop a windows based application in silverlight. I went through many articles and every where I found that "Silverlight is for web based application". I don't know whether I am wrong or right, as my superiors told me that in Silverlight5 we can develop Windows based application. Can any body help me to give a clue for how to start. Any help would be highly appreciated.
Thanks in advance
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(5)
如果您指的是可以连接互联网的基于 Windows 的应用程序,您可以选择 silverlight 支持的
浏览器外应用程序
,但如果您想要简单的普通桌面应用程序,则使用 Silverlight 是没有意义的,WPF 会是最好的选择。在这种情况下,正确的选择。看看 这篇文章介绍了如何使用 Silverlight 构建浏览器外应用程序。
Silverlight 专门用于构建基于丰富 UI 的 Web 应用程序,而 WPF 最适合为桌面创建丰富 UI 的应用程序。
If you mean a Windows based application which can connect with internet you go for
Out of Browser application
which silverlight supports but if you want simple plain desktop application, there is no point in using Silverlight, WPF would be the right choice in that case.Look at this article for building an out of browser app using Silverlight.
Silverlight specializes in building rich UI based Web applications and WPF is best for making UI rich applications for Desktop.
您可以“在浏览器之外”运行 silverlight 应用程序,这只是配置中的一个设置。以下视频包含更多信息:http://www.silverlight .net/learn/videos/all/out-of-browser-experiences/
You can run silverlight apps "Out Of Browser", its just a setting in the config. Here's a video with more info: http://www.silverlight.net/learn/videos/all/out-of-browser-experiences/
silverlight 是一种在客户端计算机上运行的基于 Web 的技术。它基本上是 Microsoft 版本的 Flash。
话虽这么说,现在您可以编写在浏览器之外运行的 silverlight 应用程序。但是,它们并不是“真正的”Windows 应用程序。 silverlight 是 WPF 的子集。但是,您也可以制作在浏览器中运行的 WPF 应用程序。还困惑吗?
最重要的是,WPF 适用于桌面应用程序,并且功能齐全,可以访问计算机资源。
而silverlight是WPF的轻量级版本,旨在在浏览器中运行,类似于flash。由于安全模型等原因,它不具备完整桌面应用程序的所有功能。
两者都具有跨入对方领域的元素。
silverlight is a web-based technology that runs on the client machine. it is, basically, Microsoft's version of Flash.
Now, that being said, you CAN write silverlight apps that run out of the browser. but, they are not "really" windows apps. silverlight is a sub-set of WPF. However, you can also make WPF apps that run in a browser. Confused yet?
The bottom line is that WPF is for desktop apps and is full-featured with access to the machine resources.
while silverlight is a light-weight version of WPF that is intended to be run in a browser, similar to flash. it does not have all the features of a full desktop application due to security model and that sort of thing.
Both have elements that cross into the domain of the other.
就像所有美好的事情一样,答案是“这取决于你想要做什么”。如果您想要一个可以在浏览器内部、浏览器外部以及 Windows 和 Mac 上运行的应用程序,那么 Silverlight 就是答案。您还可以免费获得/受到安全沙箱的限制;您可以通过要求用户提供额外权限来绕过此沙箱。如果您尝试做的事情需要多显示器支持、访问 COM 对象、笔画/笔/手写笔输入、3D 硬件加速或访问大型本地文件存储,那么 WPF 可能是更好的答案。 Silverlight 浏览器外应用程序还具有一个很好的“电话主页”功能,可以自动下载更新; WPF 要求您手动滚动它。
有些人提到了 XBAP(在浏览器内运行 WPF)。远离这堆容易出错的热气腾腾的东西。它对于演示软件很有用,但不是您想要支持的东西。
Like all good things, the answer is "it depends on what you're trying to do". If you want an application that can run inside the browser, outside the browser, plus on Windows and Mac then Silverlight is the answer. You also get for free/are restricted by a security sandbox; you can get around this sandbox by requiring additional permissions from the user. If you're trying to do something that requires multiple monitor support, access to COM objects, stroke/pen/stylus input, 3D hardware acceleration, or access to a large local file store then WPF is probably the better answer. Silverlight out of browser applications also have a nice "phone home" feature that will automatically download updates; WPF requires you to roll this by hand.
Some folks have mention XBAPs (running WPF inside of a browser). Stay away from this error prone steaming pile of stuff. It's good for demoware, but is not something which you'd want to support.
你没听错。
这称为 “在浏览器之外”:
You heard right.
This is called "out of browser":