Silverlight - 入门

在本章中,我们将看一个Silverlight的工作示例.我们需要两件事 :

  • 首先,我们需要一个网页. Silverlight适用于富Internet应用程序,旨在作为Web页面的一部分在Web浏览器内运行.该页面需要包含一个合适的标签来加载Silverlight插件.它还可以包含检测Silverlight是否已安装的逻辑,并且可以在缺少时提供一些后备用户界面.

  • 我们需要的第二件事是Silverlight内容本身.本教程将重点介绍Silverlight的.NET编程模型.我们将创建一个已编译的Silverlight应用程序,其中包含XAML(我们用于定义Silverlight用户界面的模型语言)和用C#编写的.NET代码的混合.

创建网页

开始使用Silverlight的最简单方法是创建一个包含HTML页面且没有服务器端代码的普通网站.让我们看一个非常简单的例子.

第1步 : 打开 Visual Studio .点击文件菜单,指向新建,然后点击项目.

创建一个网页

第2步 : 将打开新建项目对话框.在模板下,选择 Visual C#,然后单击Silverlight .在右侧窗格中,选择Silverlight应用程序.

选择Silverlight应用程序

在硬盘上输入项目名称和位置以保存项目,然后单击确定创建项目.

Silverlight项目本身就是构建Silverlight内容,该内容只是构成整个Web应用程序的众多资产之一.

单击确定.

第3步 : 选中托管Silverlight应用程序复选框.默认是ASP.NET Web应用程序项目.

新Silverlight应用程序

第4步 :  MS-Visual Studio创建了两个项目,Silverlight项目和ASP.NET Web应用程序.现在,我们确实需要一个ASP.NET Web应用程序.您可以在 Solution Explorer 窗口中看到这一点,如下所示.

解决方案资源管理器

任何可以通过HTTP提供内容的东西都可以,但这是 Visual Studio ,它理解ASP.NET网络技术,所以这就是它给出的我们.

为了证明Silverlight不依赖于任何特定的服务器端技术,让我们删除这个 .aspx 文件,只留下纯静态HTML文件.

第5步 : 右键单击FirstExampleTestpage.aspx.从选项列表中,单击删除.

FirstExampleTestpage.aspx

第6步 : 将 FirstExampleTestPage.html 设为开始页.

FirstExampleTestpage.html

MainPage.xaml 文件定义Silverlight内容的用户界面.您可以直接编写XAML代码,也可以使用工具箱拖放不同的UI元素.

步骤7 : 下面给出了 MainPage.xaml 中的一个简单代码,其中 Button TextBlock StackPanel 中定义.

<UserControl x:Class = "FirstExample.MainPage" 
   xmlns = "http://schemas.microsoft.com/winfx/2006/xaml/presentation" 
   xmlns:x = "http://schemas.microsoft.com/winfx/2006/xaml" 
   xmlns:d = "http://schemas.microsoft.com/expression/blend/2008" 
   xmlns:mc = "http://schemas.openxmlformats.org/markup-compatibility/2006" 
   mc:Ignorable = "d" 
   d:DesignHeight = "300" d:DesignWidth = "400">  
   
   <Grid x:Name = "LayoutRoot" Background = "White"> 
      <StackPanel> 
		
         <TextBlock x:Name = "TextMessage"  
            Text = "Hello World!"  
            Margin = "5">
         </TextBlock> 
			
         <Button x:Name = "ClickMe"  
            Click = "ClickMe_Click"  
            Content = "Click Me!"  
            Margin = "5"> 
         </Button> 
			
      </StackPanel> 
   </Grid> 
	
</UserControl>

第8步 : 此示例假定您已创建名为 ClickMe_Click 的事件处理方法.以下是 MainPage.xaml.cs 文件中的内容.

using System.Windows; 
using System.Windows.Controls;
  
namespace FirstExample { 

   public partial class MainPage : UserControl { 
	
      public MainPage() { 
         InitializeComponent(); 
      } 
	  
      private void ClickMe_Click(object sender, RoutedEventArgs e) { 
         TextMessage.Text = "Congratulations! you have created your first Silverlight Applicatoin"; 
      } 
   } 
}

第9步 :  Silverlight应用程序可以在任何已安装的浏览器上运行.

Silverlight Application Run

第10步 : 编译并执行上述代码后,您将看到以下网页.

已编译已执行

步骤11 : 现在,当您单击单击我按钮时,它将更新 TextBlock 中的文本,如下所示.

文本更新

我们建议您通过添加更多UI元素来执行上述示例.