`
ljl_xyf
  • 浏览: 617805 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

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支持VS2010中文版第一部分

    由于上传限制 只能分开2部分了 第二部分 名字是 Silverlight4.0支持VS2010中文版第二部分 这个是我装了N次 才搞定的一个版本,支持VS2010中文版

    Silverlight4.0支持VS2010中文版第二部分

    由于上传限制 只能分开2部分了 第一部分 名字是 Silverlight4.0支持VS2010中文版第一部分 这个是我装了N次 才搞定的一个版本,支持VS2010中文版

    silverlight4.0中文教程二(一共两个分卷压缩包下载全了再解压)

    请注意:由于文件过大分卷压缩,一共两个压缩包(),请下载后放在同一目录下再解压缩,只下载其中一个无法使用,这是第二个分卷压缩包,重名还不上传,请下载后将压缩包改为和第一个压缩包名称一致(扩展名不改)再解...

    C#4.0编程(第6版)

    中文名: C#4.0编程 (第6版,涵盖Visual Studio 2010以及.NET4) 原名: Programming C# 4.0: Building Windows, Web, and RIA Applications for the .NET 4.0 Framework 作者: Ian Griffiths Matthew Adams Jesse ...

    C1.WINFORM.2010.V3第一包(共2包)

    C1.2010.v3版注册机,收集于网上。安装软件分开打包了,都有注册机...分为WINFORM,ASP.NET,ActiveX,IPHONE,MOBILE,Silverlight,WPF几个包,选择需要的下载。还有第三方控件DevExpress。文件太大,进行了分包,请谅解。

    Windows Phone 7 wp7 官方中文教程+例子

    第一章 Windows Phone 7 智能型手机 应用程式开发总览 第二章 Windows Phone 7 应用程式 图示制作指南 第三章 Windows Phone 7 广告服务应用 - AdMob 篇 第四章 Silverlight for Windows Phone 7: Hello Windows ...

    DevExpress10.2.4 第一包(共4包)

    C1.2010.v3版注册机,收集于网上。安装软件分开打包了,都有注册机...分为WINFORM,ASP.NET,ActiveX,IPHONE,MOBILE,Silverlight,WPF几个包,选择需要的下载。还有第三方控件DevExpress。文件太大,进行了分包,请谅解。

    CLR.via.C#.(中文第3版)(自制详细书签)Part1

    》针对.NET Framework 4.0和多核编程进行了全面更新和修订,是帮助读者深入探索和掌握公共语言运行时、C#和.NET开发的重要参考,同时也是帮助开发人员构建任何一种应用程序(如Microsoft Silverlight、ASP.NET、...

    asp.net4 in C#2010

    你将学习如何建立第一的原则,包括如何整合来自数据库,XML文件,Web服务和其他服务的数据结构良好的ASP.NET 4.0应用程序。一个关键的ASP.NET扎实的了解,如母版页,主题,状态管理,会话状态和错误处理,而其中最好...

    .net Reflector 9.0附注册机

    .NET Reflector是一个.NET工具。.NET开发人员用它来反编译和观察内在内容,了解应用程序接口(API)、组件、框架以及所使用的所有关键代码是如何工作的。此外,还可以通过自身的代码、第三方组件和所使用的任何编译...

    深入本机影像生成器(Ngen.exe)工具使用方法详解

    实时编译需要消耗额外的cpu和内存资源,这对于服务器端程序是无关紧要的,因为实时编译只在程序第一次运行时编译,之后就不需要再做了;如果你在做的是一个较大的winform程序或者silverlight等客户端程序时就需要...

    .NET Reflector 8.1{内含破解教程和注册机}

    .NET Reflector是一个.NET工具,30多万专业的.NET开发人员用它来通过反编译和观察内在内容,了解应用程序接口(API)、组件、框架以及您所使用的所有关键代码是如何工作的,此外,还可以通过你自身的代码、第三方组件...

    CLR.via.C#.(中文第3版)(自制详细书签)

    》针对.NET Framework 4.0和多核编程进行了全面更新和修订,是帮助读者深入探索和掌握公共语言运行时、C#和.NET开发的重要参考,同时也是帮助开发人员构建任何一种应用程序(如Microsoft Silverlight、ASP.NET、...

    CLR.via.C#.(中文第3版)(自制详细书签)Part3

    》针对.NET Framework 4.0和多核编程进行了全面更新和修订,是帮助读者深入探索和掌握公共语言运行时、C#和.NET开发的重要参考,同时也是帮助开发人员构建任何一种应用程序(如Microsoft Silverlight、ASP.NET、...

    CLR.via.C#.(中文第3版)(自制详细书签)Part2

    》针对.NET Framework 4.0和多核编程进行了全面更新和修订,是帮助读者深入探索和掌握公共语言运行时、C#和.NET开发的重要参考,同时也是帮助开发人员构建任何一种应用程序(如Microsoft Silverlight、ASP.NET、...

Global site tag (gtag.js) - Google Analytics