代码改变世界

编写第一个Silverlight程序

2007-12-20 16:40  ruinet  阅读(1266)  评论(0编辑  收藏  举报
 编写第一个Silverlight程序的必备工具:

 1 Microsoft Visual Web Developer 2005 Express EditionMicrosoft Visual Web Developer 2008 Express Edition

 2 Microsoft Silverlight 1.0Microsoft Silverlight 1.1 Alpha September Refresh FOR Windows

这就开发Silverlight必备的开发工具.如果你想设计更漂亮的Silverlight程序,还得下载

 1 Expression Blend 2 December Preview(设计Silverlight的专业工具

2 Expression Encoder (提供编码,多媒体设计)

3 Expression Design (图形设计)


准备了必备工具,就可以开始编写第一个Silverlight程序了,我是使用vs2005如后我还下载了Expression Blend 2 December Preview.开始我是在Expression Blend 2 December Preview一个Silverlight 1.0 site的工程,会自动生成以下6个文件:

   

   其实在一个Silverlight 中必不可少的是要一个Silverlight.js(在每个Silverlight程序中都一样),在它里面实现创建Silverlight的客户端对象.而还有一个js文件(图片中的Default_html.js)用于调用Silverlight.js中的Silverlight.createObject()方法,同时还有一个显示最终Silverlight效果的xaml文件(图片中的Page.xaml). 因为Silverlight.js在每个Silverlight程序中都一样我们只有copy就可以了,因此只有关心两个文件就可以了
   

Xaml文件:

<Canvas
    
xmlns="http://schemas.microsoft.com/client/2007"
    xmlns:x
="http://schemas.microsoft.com/winfx/2006/xaml" Height="200"
    x:Name
="Page" Background="#FFFF00" Cursor="Hand" Width="300">
  
    
<TextBlock Width="200" Height="40" Text="Hello SilverLight!" TextWrapping="Wrap" 
             Canvas.Top
="90" Canvas.Left="80" Foreground="#FF0000FA" FontSize="20"/>
</Canvas>

  创建SilverlightJs文件:

function createSilverLightOne()
{  
    Silverlight.createObject(
        
"One.xaml",                  // Source property value.
        document.getElementById("SilverLightDiv"),                  // DOM reference to hosting DIV tag.
        "SilverLightDiv",         // Unique plugin ID value.
        {                               // Per-instance properties.
            width:'300',                // Width of rectangular region of 
                                        // plugin area in pixels.
            height:'200',               // Height of rectangular region of 
                                        // plugin area in pixels.
            inplaceInstallPrompt:false// Determines whether to display 
                                        // in-place install prompt if 
                                        // invalid version detected.
            background:'#000000',       // Background color of plugin.
            isWindowless:'false',       // Determines whether to display plugin 
                                        // in Windowless mode.
            framerate:'24',             // MaxFrameRate property value.
            version:'1.0'               // Silverlight version to use.
        }
,
        
{
            onError:
null,               // OnError property value -- 
                                        // event handler function name.
            onLoad:null                 // OnLoad property value -- 
                                        // event handler function name.
        }
,
        
null);                          // Context value -- event handler function name.
}

    我们只有修改其中的SilverLightDiv为你网页中层的ID同时one.xaml”换成你的Xaml文件就可以了

 显示的aspxhtml文件,只要包含js文件,添加层,调用创建方法.
我们只有修改其中的SilverLightDiv为你网页中层的ID同时one.xaml”换成你的Xaml文件就可以了

 

显示的aspxhtml文件,只要包含js文件,添加层,调用创建方法.

<%@ Page Language="C#" AutoEventWireup="true"  CodeFile="Default.aspx.cs" Inherits="_Default" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
    
<title>无标题页</title>
    
<script type ="text/javascript" src ="Silverlight.js"></script>
    
<script type ="text/javascript" src ="CreateSilverLight.js" ></script>
    
</head>
<body>
    
<form id="form1" runat="server">
    
<div id="SilverLightDiv">
    
<script type ="text/javascript" >
    createSilverLightOne();
    
</script>
    
    
    
</div>
    
</form>
</body>
</html>

代码下载 
一个简单的silverlight程序就完成了,如果想学习更新关于silverlight的知识可以访问以下网站
http://silverlight.net
http://silverlight.cn
http://mixfactory.6.cn/

     共同学习!



free web counter