频道直达:新闻 - 组网 - 安全 - 服务器 - 存储 - 系统 - 应用 - 开发 - 数据库 - 前沿 - 技术人 - 培训 - 求职 - 读书 - 教程 - 专题 - 产品 - 案例 - 技术圈 - 博客 - BBS
51CTO.COM_中国领先的IT技术网站
找资料:

Silverlight应用程序的.NET项目结构

作者: 佚名 出处:天极网 2007-09-24 11:24    砖    好    评论   进入论坛
阅读提示:本文通过创建一个新的.NET项目,得到创建成功后Silverlight的.NET项目的目录结构,供大家参考!

先让我们从Silverlight应用程序的.NET项目结构开始,看一下这样的一个项目中包含了些什么文件,这些文件分别是用来做什么的。了解这些内容有助于我们将来根据自己的需要制作更为复杂的项目内容。在开始介绍之前,请务必安装Silverlight 1.1 Alpha Refresh。

无论是Silverlight 1.0还是1.1版本,一个Silverlight项目总是包含以下几种文件:

1、嵌入Silverlight应用程序的html文件。

2、用来执行Silverlight应用程序载入工作的JavaScript文件。

3、定义和描述应用程序界面的XAML文件。

如果是.NET的项目,界面描述中所定义的新类型都包含在程序集(assembly)文件中。

我们可以用Microsoft Expression Blend 2 (目前最新的预览版本是September Preview)或者Visual Studio 2008 Beta2 (需安装好Silverlight Tool Alpha)来创建一个新.NET的项目。创建成功后,我们就可以看到一个Silverlight的.NET项目包含了如下的目录结构:

References目录

查看该目录,我们可以看到其中包含了许多(.dll)文件,这些文件定义了项目中所引用的各托管类型。如果我们要使用其他自定义的类型,就可能需要手动添加包含该类型定义的.dll文件。若Silverlight插件中没有包含项目所引用的某些程序集文件,则应用程序用户需要下载这些程序集文件到本地。

Page.xaml

项目默认的主界面的XAML描述文件。

Page.xaml.cs

每个xaml文件之后都有一个对应的.NET语言文件。由于我们创建的是C#项目,所以其对应的文件为.cs文件。这个文件对.xaml文件中的所引用的.NET类型做了定义。通过编译之后,项目会生成程序集文件,供.xaml文件引用,且该程序集文件会随Silverlight应用程序一起下载到用户本地。

Silverlight.js

该文件包含了运行Silverlight应用程序之前所必需的各种操作,主要检查用户是否安装了符合版本需求的Silverlight。如果没有安装,则Silverlight应用程序所在的页面将会显示图标,提示用户先安装插件。这里我们不建议Silverlight的开发设计人员改变该.js文件的内容。

TestPage.html(Blend 2中创建的文件名为Default.html)

该文件为项目的默认主页,文件中引入了Silverlight的脚本文件来载入Silverlight应用程序。

TestPage.html.js(Blend 2中的文件名为Default_html.js)

该文件中定义了TestPage.html中调用的CreatSilverlight()方法来载入Silverlight应用程序。

让我们再具体的看一看其中一些文件所包含的内容:

TestPage.html

以下是引用片段:

<html>
<head>
<title>Silverlight Project Test Page </title>
<script type="text/javascript" src="Silverlight.js"></script>
<script type="text/javascript" src="TestPage.html.js"></script>
<style type="text/css">
<!--设置应用程序在html页面中显示的大小,也可以用百分比表示,

设置为100%则应用程序为自适应大小-->
.silverlightHost { width: 640px; height: 480px; }
</style>
</head>

<body>
<!--以下的ID用来标示DIV,尤其当页面总有多个Silverlight实例时,

这个ID就成为了标示每个Silverlight应用程序的重要标志-->
<div id="SilverlightControlHost" class="silverlightHost" >
<script type="text/javascript">
createSilverlight();
</script>
</div>
</body>
</html>

TestPage.html.js

以下是引用片段:

//creatSilverlight函数用来执行载入Silverlight应用程序的操作及相关属性
function createSilverlight()
{
Silverlight.createObjectEx({
//指定了初始化载入的应用程序页面
source: "Page.xaml",
parentElement: document.getElementById("SilverlightControlHost"),
id: "SilverlightControl",
properties: {
width: "100%",
height: "100%",
version: "1.1",
enableHtmlAccess: "true"
},
events: {}
});

// 下面的函数是默认将键盘焦点集中在Silverlight应用程序上
document.body.onload = function() {
var silverlightControl = document.getElementById('SilverlightControl');
if (silverlightControl)
silverlightControl.focus();
}
}
 
Page.xaml

以下是引用片段:

<!--Canvas是一个包含了各种控件和元素的容器,每个Silverlight应用程序都有一个XAML的根文件,
   每个XAML文件的根都是一个Canvas容器,且只能有一个作为根元素的Canvas容器-->
<Canvas x:Name="parentCanvas"
xmlns="http://schemas.microsoft.com/client/2007"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
<!--指定当Load事件发生时所要载入的方法-->
Loaded="Page_Loaded"
<!--指定该.xaml文件中的托管类进入点,以及所涉及到的引用(程序集)的位置,
   一般项目编译生成的程序集文件都位于项目中的ClientBin文件夹中-->
x:Class="SilverlightProjectStructure.Page;assembly=ClientBin
            /SilverlightProjectStructure.dll"
Width="640"
Height="480"
Background="White"
>
</Canvas>

注意:由于Silverlight 1.1还处于Alpha版本,.NET语言中关于Silverlight的一些API可能会与将来的正式版本中有些出入,但是大多数基本的东西还是不变的。

【相关文章】

【责任编辑:火凤凰 TEL:(010)68476606】

专题
专题:ASP.NET 2.0基础开发指南
CRM项目实施指导
.NET移动与嵌入式技术专题
.NET Framework新手入门专题
VS.NET实用开发专题
我也说两句

匿名发表

(如果看不清请点击图片进行更换)


中 国 领 先 的 IT 技 术 网 站 ·
技 术 成 就 梦 想
·Java基础教程 (查看81024次)
·UML类图详解 (查看72498次)
·C++是垃圾语言?! (查看42631次)
·C#技术开发指南 (查看40232次)
·UML统一建模语言 (查看39205次)
·Java编程开发手册 (1198个砖)
·Java基础教程 (431个砖)
·C#技术开发指南 (311个砖)
·.NET开发手册 (254个砖)
·PB开发教程 (223个砖)
·Java编程开发手册 (658个好)
·Java基础教程 (578个好)
·.NET开发手册 (282个好)
·PB开发教程 (213个好)
·Delphi开发技术手册 (200个好)
订阅技术快讯
电子杂志下载
名称:SQL Server数据库管理精品黄皮书
简介:书中文章经过精挑细选,便于用户能根据自己的实际工作和学习,快速在本书寻找到相关资料。内容涵盖了SQL Server的安装与升级、语句查询、数据备份和恢复、自动化任务、数据同步、数据字典、安全和预防、性能和优化、集群等各方面应用信息,以及DBA管理人员在数据库管理工作中
名称:2007路由技术大全
简介:《2007路由技术大全》由51CTO.com网站特别策划制作,该书包括路由器技术、路由器产品、路由器配置、安全设置、路由器故障处理、路由器密码恢复,以及广大网友在实践使用中的心得经验和技巧文章,内容注重实用性,适用于初学者入门,也适合多年从业者提高,是一本实践和理论完
名称:网络安全精品应用黄皮书
简介:《2007精品网络安全黄皮书》包括了9个大类24个小类, 800余篇文章,内容包含了熊猫烧香病毒、DDOS攻击、ARP病等热点问题的介绍及解决方案。从病毒查杀、防范、系统、数据等各方面的安全设置到黑客技术的了解、防范,涉及到了安全应用的全部领域, 由浅至深内容全面。