silverlight起步(二)——第一个silverligth

简介: 把所有的配置完成后,就可以进行sl开发了。 新建立silverlight项目,在建立的过程中,会弹出选项建立引用此silverlight项目的web项目。确定后,建立完毕。 我现在建立的sl项目名称为:SLApp 此项目下自动生成一些文件,其中的两个文件: App.xaml      App.xaml.cs  MainPage.xaml      MainPage.xaml.cs  发现与aspx文件规则很相似。

把所有的配置完成后,就可以进行sl开发了。

新建立silverlight项目,在建立的过程中,会弹出选项建立引用此silverlight项目的web项目。确定后,建立完毕。

我现在建立的sl项目名称为:SLApp

此项目下自动生成一些文件,其中的两个文件:

App.xaml

     App.xaml.cs

 

MainPage.xaml

     MainPage.xaml.cs

 

发现与aspx文件规则很相似。

 

其中的App.xaml文件用于应用程序声明共享的资源,隐藏的代码文件中可以处理像gllbal.asax文件功能相似的事情。例如:Application_Startup事件

 

另一个文件MainPage.xaml文件是一个默认的xaml文件,是一个开始页面。

 

加载这个MainPage.xaml控件的方法是:

App.xaml.cs中的:

private   void  Application_Startup( object  sender, StartupEventArgs e)
{
     
this .RootVisual  =   new  MainPage();
}

 

 现在做一个简单的长方形。

(一)   sl项目中添加sl用户控件,名字为SelfRectangle.xaml

现在xaml文件暂时叫做视图文件,cs文件叫代码文件。

添加了用户控件后,视图文件结构为:

< UserControl  x:Class ="SLApp.SelfRectangle"
    xmlns
="http://schemas.microsoft.com/winfx/2006/xaml/presentation"  
    xmlns:x
="http://schemas.microsoft.com/winfx/2006/xaml"  
    Width
="400"  Height ="300" >
    
< Grid  x:Name ="LayoutRoot"  Background ="White" >
    
</ Grid >
</ UserControl >

 

 这里边包括两个结点:

·UserControl,根元素,做为视图文件中最高级别的元素。所有的UI元素都要在这里边

·Grid,布局面板控件,这种布局面板控件有三种,这是其中的一种。所有的UI元素都要放到布局中。

现在添加一个长方形,即在Grid结点内添加:

< Rectangle  Fill ="Red"  Width ="100px"  Height ="100px" ></ Rectangle >

 

其中的属性很好理解:填充色:Red,长宽

同时,把Grid的属性也定义一下,现在变成: 

img_405b18b4b6584ae338e0f6ecaf736533.gif 代码
< UserControl  x:Class ="SLApp.SelfRectangle"
    xmlns
="http://schemas.microsoft.com/winfx/2006/xaml/presentation"  
    xmlns:x
="http://schemas.microsoft.com/winfx/2006/xaml"  
    Width
="400"  Height ="300" >
    
< Grid  x:Name ="LayoutRoot"  Background ="Blue" >
        
< Grid .RowDefinitions >
            
< RowDefinition  Height ="120" ></ RowDefinition >
        
</ Grid.RowDefinitions >
        
< Grid .ColumnDefinitions >
            
< ColumnDefinition  Width ="200" ></ ColumnDefinition >
        
</ Grid.ColumnDefinitions >
        
< Rectangle  Fill ="Red"  Width ="100"  Height ="100"  Grid.Row ="0"  Grid.Column ="0" ></ Rectangle >
    
</ Grid >
</ UserControl >

 

(二)   设置这个控件为默认的引用控件

App的代码文件中更改:

private   void  Application_Startup( object  sender, StartupEventArgs e)
{
     
this .RootVisual  =   new  SelfRectangle();
}

 

(三)   在网站项目中添加新页RectangleTest.aspx

引入silverlight控件,aspx文件变成了:

 

img_405b18b4b6584ae338e0f6ecaf736533.gif 代码
< form  id ="form1"  runat ="server" >
    
< div >
        
< asp:ScriptManager  ID ="ScriptManager1"  runat ="server" >
        
</ asp:ScriptManager >
        
< asp:Silverlight  ID ="slRectangle"  runat ="server"  
             Source
="~/clientbin/SLApp.xap" ></ asp:Silverlight >
    
</ div >
</ form >

 

这里只贴出了form之间的代码部分。

说明,asp:Silverlight可能不存在引用。这个方法大家都知道:

1 添加System.Web.Silverlight.dll引用

2 web项目中的Web.config文件中添加asac控件的注册,即:

< controls >
        
< add  tagPrefix ="asp"  
             namespace
="System.Web.UI.SilverlightControls"  
             assembly
="System.Web.Silverlight" />
</ controls >

 

引用中的Source属性,引用的是SLApp.xap文件。

web项目中,有ClientBin目录,其中有SLApp.xap文件。它与建立的Silverlight项目名称相同,但扩展名不同,这里是xap(读zap),是一种压缩文件。可以通过解压缩工具打开。它就是silverlight项目生成后,bin中的打包文件,包括dll文件和其它文件。

(四)   生成silverlight项目并预览RectangleTest.aspx文件

可以看到效果。

 

同样,Hello!的制作。

< dataInput:Label  Name ="lmsg"  Content ="Hello!" ></ dataInput:Label >

 

总结:

建立第一个SL,其实步骤很简单。安装完Silverlight3.0后,在创建项目时,会有silverlight模板,这里就不贴图了。

1 建立Silverlight应用程序

2 在建立的过程中,添加引用此Silverlight项目的网站,这个会弹出窗口,选择就可以了

3 创建完成后,会有两个项目:一个silverligh项目,一个网站

4 然后就按照步骤做就可以了

博客园大道至简

http://www.cnblogs.com/jams742003/

转载请注明:博客园

目录
相关文章
|
4月前
|
开发者 C# Windows
WPF与游戏开发:当桌面应用遇见游戏梦想——利用Windows Presentation Foundation打造属于你的2D游戏世界,从环境搭建到代码实践全面解析新兴开发路径
【8月更文挑战第31天】随着游戏开发技术的进步,WPF作为.NET Framework的一部分,凭借其图形渲染能力和灵活的UI设计,成为桌面游戏开发的新选择。本文通过技术综述和示例代码,介绍如何利用WPF进行游戏开发。首先确保安装最新版Visual Studio并创建WPF项目。接着,通过XAML设计游戏界面,并在C#中实现游戏逻辑,如玩家控制和障碍物碰撞检测。示例展示了创建基本2D游戏的过程,包括角色移动和碰撞处理。通过本文,WPF开发者可更好地理解并应用游戏开发技术,创造吸引人的桌面游戏。
222 0
|
7月前
|
存储 自然语言处理 Linux
非常高兴地宣布,我们发布了RunFlow的第一个版本,这是一款全新且强大的效率工具
RunFlow v1 发布!这是一个跨平台的效率工具,类似 Wox、PowerToys、Alfred 和 Raycast。特色包括:跨平台支持(暂不包括Linux)、多语言(默认英/中文,可扩展)、自定义样式与主题、关键字驱动功能、后置匹配技术、实时刷新结果、上下文菜单、工具栏、固定关键字、可交互界面、独立窗口、热点事件、专注模式和数据安全同步。支持插件扩展,开发插件语言无限制,基于JetBrains Compose Multiplatform。
67 1
非常高兴地宣布,我们发布了RunFlow的第一个版本,这是一款全新且强大的效率工具
|
图形学 C++
【拥抱元宇宙】创建你的第一个Unity程序HelloWorld,并发布
需要先下载一个Unity Hub,以及安装Unity编辑器。Unity Hub需要登陆,激活码可以选择个人用户,免费的。免费的无法改变启动画面,其他的都还好。以下案例,我以Unity2020.3.22 LTS 版本进行创建,其他大佬们可以根据自己情况选择版本。
222 0
【拥抱元宇宙】创建你的第一个Unity程序HelloWorld,并发布
|
Java 应用服务中间件 Android开发
【Java框架型项目从入门到装逼】第四节 - 编写第一个Servlet程序
【Java框架型项目从入门到装逼】第四节 - 编写第一个Servlet程序
|
API Windows
微软新一代输入法框架 TSF - Text Service Framework 小小的研究
原文:微软新一代输入法框架 TSF - Text Service Framework 小小的研究 虽说是转载的,但是其中,有很多我自己的评论,我会用红色的字标出来,参考的博文有: TSF架构:http://blog.
4121 0
|
JavaScript 前端开发
年轻人的第一个桌面应用
年轻人的第一个桌面应用
123 0
年轻人的第一个桌面应用
|
Web App开发 移动开发 iOS开发
Silverlight与微软技术:微软抛弃Silverlight了吗?
今年PDC大会上,微软CEO史蒂夫·鲍尔默(Steve Ballmer)将Windows Azure、HTML 5和Windows Phone 7作为开发者平台进行了大力推广,但并没有过多强调Windows应用和Silverlight,这一点令人有些意外,同时也引起了业界的一场小风波,“微软要抛弃Silverlight”等等诸如此类的猜测评论纷纷而来。
1372 0
|
Web App开发 开发者
Web开发者最想要的20款Chrome拓展
译文链接:http://www.oschina.net/news/16299/20-most-wanted-chrome-extensions
740 0
|
Web App开发 移动开发 安全
微软推出IE10第二个平台预览版
7月1日消息,据国外媒体报道,微软继4月在MIX11会议上发表IE10首个平台预览版(Platform Preview 1,PP1)后,本周推出IE10的第二个平台预览版( PP2)。IE10将会伴随着明年出炉的Windows 8的问世,采用多种新的HTML5标准,强化HTML5的效能,同时也针对网络应用程序新增各种安全功能。
760 0