Silverlight4.0(1) 之 第一个Silverlight程序
之前有点儿纠结,一直在vs08下学Silverlight2.0,前两天Down了一个vs2010然后把Silverlight也更新到了 4.0,突然不知道是该写2.0还是4.0了,后来狠了狠心,技术嘛~要与时俱进,所以从决定从第一篇随笔开始就直接介绍vs2010下的 silverlight4.0了
废话不多说开整!
首先稍微介绍一些Silverlight。Silverlight是微软开发的一个很NB的解决方案,这个在百度都能查到,我就不得瑟了,主要说说学它干什么。
1. Silverlight很NB,据说在未来几年内能替代Flash技术,并且可能成为Web开发的主流技术,所以想在Web编程界继续混下去的话,学学Silverlight还是很吃香的。
2. 第一条说过了,Silverlight的发展趋势很猛,所以几年后的Silverlight开发人员会很赚钱(因为是主流技术嘛),就凭这点大家也有必要学学这个东西,赚钱的事儿可是大事儿啊。
3. 打发无聊的程序员生活呗,众所周知,干程序员这行业,说忙的时候真TM忙,说闲的时候你玩儿游戏都能给你玩儿烦了,所以在闲的时候,与其利用游戏消磨时间,还不如学学Silverlight,毕竟前两点已经说的很明白了!
4. 还在想...
5. 等第四条想出来再想...
6. 。。。
实例: 第一个Silverlight程序
在开始做之前,大家需要准备两样东西,那就是一颗恒心和开发工具。
一颗恒心:自己摸着胸口大喊三声:我要学会Silverlight!
开发工具:
vs2010英文版(中文版还没出): http://download.microsoft.com/download/2/4/7/24733615-AA11-42E9-8883-E28CDCA88ED5/X16-42552VS2010UltimTrial1.iso
Silverlight4_Tools开发SDK:http://go.microsoft.com/fwlink/?LinkID=141284
Silverlight_4_Toolkit_April_2010控件包:http://silverlight.codeplex.com/releases/view/43528 (单击那个Silverlight_4_Toolkit_April_2010.msi 然后选择 I Agree)
Silverlight客户端:http://www.crsky.com/soft/12787.html (霏凡下载)
四个程序解析一下:vs2010不多说了,不知道的自己百度去;Silverlight4_Tools开发SDK是Silverlight开发环 境,这个必须装,否则你没法开发; Silverlight_4_Toolkit_April_2010控件包,这个东西很不错,里边有很多NB控件,微 软封装的控件还是非常有用的;Silverlight客户端,这个东西不装的话,你开发完了程序无论你自己运行,在自己电脑上是看不到效果的,就好比你不 装Flash10.0没法看视频是一个道理的。
以上的下载地址如果有实效的,我也没办法,大家可以通过前边的名字去百度自己搜,我觉得程序员都应该很会用百度和Google的,所以在这里也不多说了,如果有的人是专门进来找下载地址的,那如果没下到,本人不负责。
下面开始说怎么做
实例1:
1. 打开vs2010--File--New--Project 选择弹出来的界面中左边的Silverlight后选择右边的Silverlight Application 单击ok。
2. 将第二个下拉框(New Web Project type)中的内容变更为Asp.Net Web Site,这个很重要,选择这个是决定你要开发的项目是类型,你要是选错了,开发不出来别怪我
此时呈现在大家眼前的就是Silverlight的开发界面,是不是看着有些晕?哈哈 那就对了,否则我就不会继续往下讲了。
那么第一步,大家看一下站点根目录下的文件ClientBin文件夹,此时这个文件夹是空的,那么我们现在不进行任何的代码编写直接运行一下程序(Ctrl+F5)
看到没,现在ClientBin文件夹下多了一个名为SilverlightTest1.xap的文件,好!现在一个完整的silverlight解决方案已经出现了,下面引用高手的文章简单介绍一下每个文件的作用
.xap文件:该文件是一个标准的.NET程序集,在编译的时候所有的XAML标识和资源文件如图片等都会包含在里面,采用了标准的Zip压缩算法,以减少客户端下载的文件体积。(其实它的作用就是一个bin文件,具体的内容请看http://tech.sina.com.cn/s/2008-07-15/1428733663.shtml 不过不建议大家现在看,等大家做一些实例以后自然就会了解它的作用)
silverlight.js文件:Silverlight.js 文件提供一些 JavaScript 帮助器函数,这些函数用于将 Silverlight 插件嵌入某一网页和用于自定义 Silverlight 安装体验。(说实话,我到现在也不知道它具体是干什么的可能本人学的比较浅,所以至今还没对这个文件进行更深入的了解)
.aspx和.html文件:这个不说了,这个开发过C#.Net的人都应该明白,只不过于C#.Net不同的是,网页所呈现的内容不是写在这里 的,而是通过.xap文件将编写好的.xaml文件嵌入到他们的页面里边,不太好理解吧,等做完第一个实例,大家就应该能明白一些了。
大家可以先不理解这段话, 还是那句话 等做完第一个实例,大家就应该明白一些了。
web.config:站点配置文件,这个大家都懂的。
然后给大家说说Silverlight导航应用程序(SilverlightTest1)
这个导航应用程序实际上就是我们编写网站页面内容的地方,也就是刚才我们提到的镶嵌在aspx和html页面中的内容,每个程序下可建立多个.xaml文件(根据网站内容确定xaml的个数)。
App.xaml:大家可能会疑惑,同样是xaml文件,为什么要把app.xaml文件单拿出来说一下,因为在xap文件中已经将 app.xaml文件作为了主导航页,也就是说一般不需要在app.xaml文件中额外的编写代码,程序执行的时候,xap文件通过app.axml中的 代码来确定网站的首页的指向(提示1),有人会问,为什么不把app.axml直接作为网站的起始页,这个问题... 我也不知道,可能出于结构的考虑吧,这个问题如果大家想纠结一下的话,可以去百度或者google搜搜,然后留言告诉我一声。我实在不想再这样的问题上纠 结,毕竟先实现功能才是最重要的
其他xaml:用于编写页面内容的文件,依然是那句话,等做完第一个实例,大家就应该能明白一些了。
3. 编写第一个实例代码
打破传统的教程,咱们做个模拟登录的例子(以往第一个实例都是什么显示Hello World的例子,我觉得那样的例子实在是太屎了)
MainPage.xaml
<Grid x:Name="LayoutRoot" Background="White"><Grid.RowDefinitions><RowDefinition Height="50" /><RowDefinition Height="50" /><RowDefinition Height="*" /></Grid.RowDefinitions><Grid.ColumnDefinitions><ColumnDefinition Width="200" /><ColumnDefinition Width="200" /></Grid.ColumnDefinitions><TextBlock Height="23" HorizontalAlignment="Left" Margin="141,20,0,0" Name="textBlock1" Text="用户名:" VerticalAlignment="Top" Grid.Row="1" /><Button Content="Button" Height="23" HorizontalAlignment="Left" Margin="51,11,0,0" Name="btn1" VerticalAlignment="Top" Width="75" Grid.Row="2" Grid.Column="1" Click="btn1_Click" /><TextBox Grid.Column="1" Grid.Row="1" Height="23" HorizontalAlignment="Left" Margin="6,20,0,0" Name="uname" VerticalAlignment="Top" Width="120" /></Grid>
MainPage.xaml.cs
using System; using System.Collections.Generic; using System.Linq; using System.Net; using System.Windows; using System.Windows.Controls; using System.Windows.Documents; using System.Windows.Input; using System.Windows.Media; using System.Windows.Media.Animation; using System.Windows.Shapes;namespace SilverlightTest1 {public partial class MainPage : UserControl{public MainPage(){InitializeComponent();}#region 登录按钮事件/// <summary>/// 登录按钮事件/// </summary>/// <param name="sender"></param>/// <param name="e"></param>private void btn1_Click(object sender, RoutedEventArgs e){string u_name = uname.Text.ToString().Trim();if (u_name == "Terry"){MessageBox.Show("恭喜您登陆成功");}else{MessageBox.Show("您登录失败");return;}}#endregion} }
效果我就不粘图了,自己做做试试吧,代码应该不用我在过多的解释了吧...
提示1:
上文中提到的app.xaml关于首页指向的代码就在app.xaml.cs中,新建网页时编译器已经默认的将代码写好了
app.xaml.cs
private void Application_Startup(object sender, StartupEventArgs e){//编译项目时,指向MainPage页面this.RootVisual = new MainPage(); }
OK了,通过第一个实例,大家应该可以对Silverlight有所了解了,Silverlight实际上为我们在Web编程上带来了很多惊喜,也 许Silverlight新手对于开发界面,编码语法已经架构思想仍然还是一头雾水,不过没关系,只要不断的练习总有一天你会对Silverlight爱 不释手的。
好了废话不多说了,这篇文章就先到这儿吧。
Silverlight4.0(1) 之 第一个Silverlight程序相关推荐
- Silverlight for Windows Phone 7开发系列(2):第一个Silverlight程序
前言 上一篇讲述了Windows Phone 7开发环境的搭建,这篇文章讲述如何创建,部署,调试以及运行Silverlight for Windows Phone应用程序,同时介绍如何Microsof ...
- EJB3.0学习笔记---MDB--第一个MDBBean程序:
第一个MDBBean程序: P2P方式传递消息: 1.创建EJB项目:EJBTestP2P_05 2.在com.credream.ejb包下: MyQueueMDBBean.java package ...
- EJB3.0学习笔记---第一个EJB程序:
第一个EJB程序: 开发服务端程序: 1.新建一个EJB project:EJBTest_01 2.在src下建包:com.credream.ejb 3.写接口:FirstEjb.java pac ...
- EJB3.0学习笔记--第一个EJB程序:
第一个EJB程序: 开发服务端程序: 1.新建一个EJB project:EJBTest_01 2.在src下建包:com.credream.ejb 3.写接口:FirstEjb.java pac ...
- 2.0 你的第一个CODESYS程序
开始之前 数据安全: 为了尽量减少数据安全漏洞的风险,我们建议采取以下组织和技术措施: * 避免从开放网络和互联网访问PLC和控制网络. * 使用VPN进行远程访问. * 安装防火墙. * 如果要在网 ...
- git 创建webpack项目_从0到1开发一个小程序cli脚手架(一)创建页面/组件模版篇...
github地址: https://github.com/jinxuanzheng01/xdk-cli cli工具是什么? 在正文之前先大致描述下什么是cli工具, cli工具英文名command-l ...
- Silverlight学习笔记(三):创建第一个Silverlight应用程序
在开始创建程序之前,还是要提一下关于Silverlight开发环境搭建的问题.如果使用VS2010,这可以搭建Silverlight4的开发环境.我推荐大家看这篇由大牛jv9撰写的[轻松建立Silve ...
- Linux上运行一个c程序
b站的视频链接:Linux虚拟机运行c程序_哔哩哔哩_bilibili希望对大家有所帮助,不对的地方还请多多指教!https://www.bilibili.com/video/BV18Q4y1r7st ...
- Silverlight4.0教程之WebBrowser控件(Silverlight内置HTML浏览器控件)
微软于PDC2009上发布Silverlight 4 Beta版,微软在Silverlight 4版本中处理了约8000个的Silverlight终端用户的请求,加入了一系列另开发人员兴奋的新特性,最 ...
最新文章
- html 值追加,从JSON中读取数据追加到HTML中
- 安全观之我见(三):省银之道在预防
- okhttp连接池_OkHttp配置HTTPS访问+服务器部署
- 洛谷T1874 快速求和
- np读取csv文件_pandas.read_csv函数参数详解
- java+解析未知json_在Java中解析JSON时如何忽略未知属性– Jackson @JsonIgnoreProperties注释示例...
- java string对象放在什么区域_java中String对象的存储位置
- 代码结构中Dao,Service,Controller,Util,Model意思和划分
- 如何在VS2013中显示代码行号
- Configure Javadoc and Source Code for JRE in Eclipse JDT
- 2019,国产手机生死存亡的一年
- matlab 图片频域去噪实例(详细注释)
- Android 7.0(API 24)以上调用系统安装包问题
- ansys计算机热仿真,ANSYS仿真软件热分析
- Android 设置无线热点模块隐藏SSID
- 传输层协议《TCP/IP详解 卷1:协议》学习笔记
- 说说各种手机输入法的体验
- Dart学习笔记六:集合类型详解
- Python3基础教程2——Python的标准数据类型
- 面试感悟----一名3年工作经验的程序员应该具备的技能,对于一些入门或者还在面试阶段的人有着很大的启发...