创建一个解决方案,这个解决方案包括一个ASP.NET网站项目和一个Silverlight应用程序项目。

 1)ASP.net项目

-------------Default.aspx:ASP.net默认页面,是一个无标题空白的ASPX文档

-------------TestPage.aspx和TestPage.html:都是用来承载Silverlight应用程序的测试页。TestPage.aspx 是项目默认的启动页面,采用的是ASP.Net。

-------------Silverlight.js:支持HTML一类页面中运行Silverlight。

a. .web管理服务器端的相关操作。比如,如果用http:网址形式run,就需要将.web工程设为启动任务,将.aspx设为 启动页面。否则将用物理地址run;

b. 当编译Silverlight应用程序时,VS会将整个工程编译成一个标准的.NET组件,并将其他用到的资源封装至一个.xap文件中;

c. xap文件不能单独存在于浏览器中,必须依托于网页。

d. web.config:asp.net 网站项目的配置文件

e. XAML控件来呈现silverlight 对象,而TestPage.html则采用的是object对象和JavaScript来呈现silverlight 对象,他们分别用了测试silverlight 在aspx和标准的html页面中是否正常工作

  2)Silverlight应用程序

新建silverlight项目会自动新增两个XAML文件,分别是APP.XAML和MainPage.XAML两个文件。

a. XAML类型的文件是基于XML格式的,用于定义Silverlight应用程序界面的文件,是Silverlight 应用程序的核心之一;

b. APP.xaml主要是用于控制整个Silverlight应用程序的加载入口和异常的处理;App.xaml主要用于定义供整个应用程序使用的各种资源,如笔刷,样式等。其对应的代码文件App.xaml.cs用于处理应用程序级别的事件,如Application_Startup等;

c. MainPage.xaml是默认的主页面,在应用程序启动时即进行初始化,在其中可以使用各种UI组建定义界面,并且在代码文件MainPage.xaml.cs中处理事件。

(一)关于MainPage.xaml页面

      <UserControl>是MainPage.xaml的root元素,Grid是默认布局元素。 MainPage.xaml是Silverlight应用程序的默认用户控件,编译运行时会自动加载该用户控件到托管的web页面中运行,它类似ASP.net中的Default.aspx页面,在silverlight3.0中,MainPage.xaml是以用户控件“UserControl”作为根元素的形式加载的,所以可以把MainPage.xaml理解为一个MainPage的用户控件,他是silverlight运行时默认启动的xaml用户控件,MainPage类继承UserControl,而UserControl类是所有xaml文件的基类。

(二)Blend 可以使用Visual Studio 8及以上创建或打开一个silverlight项目,然后再切换到Blend 3中进行编辑,也就是Visual Studio 及以上可以和Blend3共享一个silverlight文件。

参考自:

http://www.cnblogs.com/lihaibo/archive/2011/10/07/2200286.html

http://blog.csdn.net/koself/article/details/8513111

http://gaoling386.blog.163.com/blog/static/54046024201281142931133/

一个Silverlight工程的各文件解析的更多相关文章

  1. 第一个Maven工程的目录结构和文件内容及联网问题

    [第一个Maven工程] ①目录结构 Hello |---src |---|---main |---|---|---java |---|---|---resources |---|---test |- ...

  2. 如何:执行大型 XML 文档的流式转换 大XML文件解析入库的一个方法

    w Parsing Huge XML Files Incrementally http://pclib.github.io/safari/program/python-cookbook/Text/ch ...

  3. paper 37 : WINCE的BIB文件解析

    WINCE的BIB文件解析 BIB的全称为Binary Image Builder,在Wince编译过程中的最后MakeImage阶段会用到BIB文件,BIB文件的作用是指示构建系统如何构建二进制映像 ...

  4. C语言中.h和.c文件解析(很精彩)

    C语言中.h和.c文件解析(很精彩)   简单的说其实要理解C文件与头文件(即.h)有什么不同之处,首先需要弄明白编译器的工作过程,一般说来编译器会做以下几个过程: 1.预处理阶段 2.词法与语法分析 ...

  5. C语言中.h和.c文件解析

    整理自C语言中.h和.c文件解析(很精彩) Part.1(林锐<高质量C/C++编程>) 通过头文件来调用库功能.在很多场合,源代码不便(或不准)向用户公布,只要向用户提供头文件和二进制的 ...

  6. 转-C语言中.h和.c文件解析

    C语言中.h和.c文件解析(很精彩)   简单的说其实要理解C文件与头文件(即.h)有什么不同之处,首先需要弄明白编译器的工作过程,一般说来编译器会做以下几个过程:       1.预处理阶段 2.词 ...

  7. Module、__init__.py 文件解析

    一.什么是Module? 一个python Module就是一个模块,本质就是一个.py文件,其中包含了python对象的定义和python语句. 在模块内部,模块名存储在全局变量__name__中, ...

  8. class文件与dex文件解析

    关于Android的热修复与插件化技术在如今基本上已经成为了“时髦技术”的标配了,或者说用来进行“炫技”的一种方式,毕境如今Android已经发展得非常之成熟了,基本上APP用的到东东都差不多,除了业 ...

  9. Eclipse中一个Maven工程的目录结构

    在之前的javaSE开发中,没有很关注Eclipse工程目录下的环境,总是看见一个src就点进去新建一个包再写一个class.以后的日子中也没有机会注意到一个工程到底是怎么组织的这种问题,跟不要说自己 ...

随机推荐

  1. PKUWC2019 凉凉记

    请配合 BGM 食用. 菜就是菜,说什么都是借口. Day 0 前一天先到纪中报道,高铁上打了一会单机膈膜,然后又打了一遍 \(FFT\) 板子,就到了中山. 到了后,发现气温骤然升高,马上 脱 换裤 ...

  2. 【Luogu2664】树上游戏(点分治)

    [Luogu2664]树上游戏(点分治) 题面 洛谷 题解 很好的一道点分治题. 首先直接点分治,考虑过每个分治重心的链的贡献. 我们从分治重心开始找每种颜色,强制令一种颜色只在其到分治重心的链上第一 ...

  3. [luogu2503][HAOI2006]均分数据【模拟退火】

    题目描述 已知N个正整数:A1.A2.--.An .今要将它们分成M组,使得各组数据的数值和最平均,即各组的均方差最小.均方差公式如下: 分析 模拟退火学习笔记:https://www.cnblogs ...

  4. Get The Treasury HDU - 3642(体积扫描线)

    给出n个立方体,要你求这些立方体至少被覆盖三次的部分. 先把这个立方体的信息存在来,发现Z的范围不大,z范围是是[-500,500],所以我们可以先离散化,然后枚举Z, 然后对于每一段Z的区域内,在当 ...

  5. nginx日志文件的定时切割与归纳

    应用环境:生产环境中的Nginx服务器,由于访问日志文件增长速度非常快,日志太大会严重影响服务器效率.同时,为了 方便对日志进行分析计算,须要对日志文件进行定时切割.定时切割的方式有按月切割.按天切割 ...

  6. python学习day7 深浅拷贝&文件操作

    4-4 day07 深浅拷贝&文件操作 .get()用法 返回指定键的值,如果值不在字典中返回默认值. info={'k1':'v1,'K2':'v2'}mes = info.get('k1' ...

  7. 在 vue.js 中动态绑定 v-model

    在最近的项目中(基于vue),有一个需求就是通过 v-for 动态生成 input.在正常情况下,页面中的input数量是固定的,而且每个input绑定的v-model也是固定的,我们可以在 data ...

  8. JAVA基础语法 我的学习记录

    1.标识符 Java所有的组成部分都需要名字.类名.变量名以及方法名都被称为标识符. 关于Java标识符,有以下几点需要注意: 所有的标识符都应该以字母(A-Z或者a-z),美元符($).或者下划线( ...

  9. Day037--Python--线程的其他方法,GIL, 线程事件,队列,线程池,协程

    1. 线程的一些其他方法 threading.current_thread()  # 线程对象 threading.current_thread().getName()  # 线程名称 threadi ...

  10. js怎么获取微信浏览器内容的高度

    通过window对象来得到窗口相关的内外款高度信息,如下: outerHeight属性设置或返回一个窗口的外部高度,包括所有界面元素(如工具栏/滚动条).outerWidth属性设置或返回窗口的外部宽 ...