2012年(366)
分类: 系统运维
2012-03-11 16:25:52
打开Visual Studio 11,新建项目 -> 展开Visual C# -> 点击Windows Metro Style,我们可以看到微软在C#开发Windows Metro应用程序中提供了三种项目模板。
在Blend中我们同样也可以看到:
这三种模板分别可以为我们快速创建不同风格的应用程序。
拆分应用程序(Split Application):在已分组的项之间导航的Windows Metro风格应用程序的两页项目。第一页允许组选择,而第二页显示项列表以及选定项的详细信息。
空白应用程序(Blank Application):未预定义控件或布局的Windows Metro风格应用程序的单页项目。
网格应用程序(Grid Application):在多个项组之间导航的Windows Metro风格应用程序的多页项目。专用页显示组合项的详细信息。
实际上三种模板的项目结构大致一样,只是预定义了一些控件和布局,所以即使我创建了空白应用程序,在下面我也可以右击解决方案 -> 添加 –> 新建项 来自己搭建其他样式模板。
好了,这里就不多说了,下面以空白应用程序模板为例,进一步了解。
项目结构选择项目模板后,Visual Studio会自动生成预定义的项目结构。
从上面图中可以看到,项目由Assets文件夹、Common 文件夹、App.xaml页、BlankPage.xaml、BlankApplication_TemporaryKey.pfx和Package.appxmanifest组成。
如果你有Silverlight或者WPF项目经验,你会发现相比Silverlight/WPF项目,项目中多了一个Common文件夹,包含一些类和资源,一个BlankApplication_TemporaryKey.pfx文件和Package.appxmanifest文件。
BlankApplication_TemporaryKey.pfx ----- 微软代码签名证书
Package.appxmanifest------ 包含描述你的应用的元数据,包括显示名称、说明、徽标和功能。
Metro 风格应用在安全容器中运行,对文件系统、网络资源和硬件具有有限的访问权限。 无论用户何时从 Windows 应用商店安装应用,Windows 都会查看文件中的元数据Package.appxmanifest以确定应用需要执行哪些功能。例如,某个应用可能需要访问 Internet 中的数据、用户文档库中的文档,或用户的摄像头和麦克风。当应用安装完成后,它会向用户显示所需的功能,而用户必须授予相应的权限才能让它访问这些资源。如果应用没有请求并接收所需要的某个资源的访问权限,则当用户运行它时,系统将禁止其访问该资源。
Common文件夹------ 包含了一些类和资源,给项目和模板项添加依赖。
下面看看文件清单:
文件名 |
描述 |
StandardStyles.xaml |
预定义了样式和模板供项目和模板项实用。 |
Readme.txt |
信息描述 |
BindableBase.cs |
这是一个基类,提供了INotifyPropertyChanged的实现。 |
BooleanNegationConverter.cs |
在XAML中使用的转换器。转换一个布尔值。 |
BooleanToVisibilityConverter.cs |
在XAML中使用的转换器。转换到可见状态的布尔值。 |
LayoutAwarePage .cs |
具有能够适应不同布局和视图的页面功能的基类。主要是用来监听视图状态更改事件和页面Visual State切换的响应。你可以重写此行为,提供的自定义Visual State名称仍然使用在这个文件中提供的事件代码。例如:用户有时需要显示不同的UI时(如用户登录与注销),你可以使用两个不同的Visual State名称对应不同的UI,但仍然使用在这个文件中提供的相同事件代码。 |
RichTextColumns.cs |
为网格应用程序定义了Grid文本样式及布局。 |
所以,如果你希望快速开发或没有现有框架的话,可以直接使用Windows Metro为你创建的项目模板,当然如果你希望重写架构的话,也可以将项目中自动生成的类与资源删除,自己重写实现以上功能。
要求:未经作者同意,必须保留此段声明;必须在文章中给出原文连接;否则必究法律责任