有关WPf / Silverlight / Windows Phone 7开发的问题

时间:2011-02-04 20:34:29

标签: wpf silverlight windows-phone-7

我有使用C#编码(控制台和Windows窗体应用程序)的经验。对于在我的空闲时间做的事情,我一直打算学习另一种语言,并把目光放在一些内容丰富的东西上。但是,我对以下内容感到困惑:

  1. Windows窗体用于开发Windows的GUI应用程序。什么是WPF以及它与Windows Forms的区别
  2. Windows Phone开发是使用C#还是仅使用Silverlight?或者它只是使用.NET框架,你可以使用两者中的任何一个?

6 个答案:

答案 0 :(得分:2)

添加其他答案:

  1. WPF使用一个名为XAML的基于XML的标记来描述UI,就像HTML对网页一样。 XAML文件与“代码隐藏”(.cs或.vb)文件配对,该文件在构建应用程序时一起编译。将XML元素添加到XAML文件非常适合在代码隐藏文件中声明对象。对于许多课程,您可以选择做其中一种课程。

  2. 使用可以使用C#或VB.NET语言编写Windows Phone应用程序(尽管目前只有C#可以在App Hub上的Windows手机工具附带的免费Visual Studio Express中使用)。 Silverlight是.NET Framework的一个子集,其类可用于编写电话应用程序。您还可以使用XNA库来开发电话应用程序。

  3. 我强烈推荐Charles Petzolds免费电子书。他在前几章中做了很好的解释:http://charlespetzold.com/phone/index.html

    希望有所帮助!

答案 1 :(得分:1)

Win Forms是围绕基本Win32 GDI原语的轻量级面向对象。

WPF和Silverlight进行自己的渲染,不使用GDI,并且基于基于XML的布局和MIL构建。

答案 2 :(得分:1)

Windows Phone开发使用Silverlight和C#。 WP7版本的Silverlight运行在Silverlight 3的修改版本上,Silverlight 3本身使用修改/缩小的.NET框架。所以WP7开发使用了你在问题2中提到的所有内容。

对于问题1,我不能给@jeffmaphone提供更好的答案,所以请看看他的答复。

答案 3 :(得分:1)

Windows Phone 7使用Silverlight作为UI,但代码可以是C#或VB。 Code Samples for Windows Phone的此页面包含以下内容:

  

要构建和运行Visual Basic示例,必须安装其他开发人员工具。有关更多信息,请参阅安装Windows Phone开发人员工具。

有关详细信息,请参阅Windows Phone 7 Developer Guide

答案 4 :(得分:1)

1)Windows Forms是一种为Windows开发GUI应用程序的方法,WPF是另一种方法(适用于Vista,7和XP SP2)。通常,Windows Forms非常适合简单,快速和脏的应用程序,而WPF适用于更复杂和华丽的应用程序。

2)Windows Phone将Silverlight用于非游戏应用程序,将XNA用于游戏。在这两种情况下,您都可以使用C#作为逻辑层。换句话说,C#代码决定在UI中放置内容的位置,而Silverlight或XNA是与显示器交谈的不同方式。

小心搜索Silverlight教程,因为并非所有Silverlight都在手机上。

答案 5 :(得分:1)

以下是我的建议:

1)检查此讨论:WPF versus Winforms

2)通常,Windows Phone 7支持两个用于开发应用程序的框架 - Silverlight和XNA。检查MSDN以供参考:

The Silverlight and XNA Frameworks for Windows Phone

Features Supported in Silverlight for Windows Phone

PS:Silverlight开发的最佳资源之一是Silverlight官方网站:http://www.silverlight.net/