稳扎稳打Silverlight(2) - 1.0实例之支持录音和回放的钢琴(Silverlight+ASP.NET AJAX+DLINQ)

本系列文章导航

稳扎稳打Silverlight(1) - 1.0实例之电子表

稳扎稳打Silverlight(2) - 1.0实例之支持录音和回放的钢琴(Silverlight+ASP.NET AJAX+DLINQ)

稳扎稳打Silverlight(3) - 2.0控件之Border, Button, Calendar, Canvas, CheckBox, ComboBox

介绍
用Silverlight 1.0实现一个可以用鼠标或键盘弹奏,并且支持录音和回放的钢琴。(Silverlight+ASP.NET AJAX+DLINQ)
参考:http://silverlight.net/community/communitygallery.aspx

示例
Piano.xaml(用Expression Blend开发)

<Canvas

    xmlns="http://schemas.microsoft.com/client/
2007"

    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"

    x:Name="Piano" 

    W
idth="1024" Height="500">

    <
Image Source="Image/bg.jpg" Height="500" Width="1024"/>

<Image x:Name="imgC" Height="500" Width="1024" Canvas.Top="0" Source="Image/C.jpg"

Opacity="0"/>

    <Image x:Name="imgC2" Height="500" Width="1024" Canvas.Top="0" Source="Image/C2.jpg"

Opacity="0"/>

    <Image x:Name="imgD" Height="500" Width="1024" Canvas.Top="0" Source="Image/D.jpg"

Opacity="0"/>

    <Image x:Name="imgD2" Height="500" Width="1024" Canvas.Top="0" Source="Image/D2.jpg"

Opacity="0"/>

    <Image x:Name="imgE" Height="500" Width="1024" Canvas.Top="0" Source="Image/E.jpg"

Opacity="0"/>

    <Image x:Name="imgF" Height="500" Width="1024" Canvas.Top="0" Source="Image/F.jpg"

Opacity="0"/>

    <Image x:Name="imgF2" Height="500" Width="1024" Canvas.Top="0" Source="Image/F2.jpg"

Opacity="0"/>

    <Image x:Name="imgG" Height="500" Width="1024" Canvas.Top="0" Source="Image/G.jpg"

Opacity="0"/>

    <Image x:Name="imgG2" Height="500" Width="1024" Canvas.Top="0" Source="Image/G2.jpg"

Opacity="0"/>

    <Image x:Name="imgA" Height="500" Width="1024" Canvas.Top="0" Source="Image/A.jpg"

Opacity="0"/>

    <Image x:Name="imgA2" Height="500" Width="1024" Canvas.Top="0" Source="Image/A2.jpg"

Opacity="0"/>

    <Image x:Name="imgB" Height="500" Width="1024" Canvas.Top="0" Source="Image/B.jpg"

Opacity="0"/>

<MediaElement x:Name="C" AutoPlay="false" Source="Media/C.wma"/>

    <MediaElement x:Name="C2" AutoPlay="false" Source="Media/C2.wma"/>

    <MediaElement x:Name="D" AutoPlay="false" Source="Media/D.wma"/>

    <MediaElement x:Name="D2" AutoPlay="false" Source="Media/D2.wma"/>

    <MediaElement x:Name="E" AutoPlay="false" Source="Media/E.wma"/>

    <MediaElement x:Name="F" AutoPlay="false" Source="Media/F.wma"/>

    <MediaElement x:Name="F2" AutoPlay="false" Source="Media/F2.wma"/>

    <MediaElement x:Name="G" AutoPlay="false" Source="Media/G.wma"/>

    <MediaElement x:Name="G2" AutoPlay="false" Source="Media/G2.wma"/>

    <MediaElement x:Name="A" AutoPlay="false" Source="Media/A.wma"/>

    <MediaElement x:Name="A2" AutoPlay="false" Source="Media/A2.wma"/>

    <MediaElement x:Name="B" AutoPlay="false" Source="Media/B.wma"/>

<Canvas x:Name="pathCanvas">

        <Path x:Name="CPath" Opacity="0.01" Fill="#FFFFFFFF" Stretch="Fill" Stroke="#FF000000"

Width="161.666656494141" Height="272.333312988281" Canvas.Left="135.5"

Canvas.Top="138.83332824707"Data="M272.66667,140 L136,330 147.33333,336 162.66667,

410.66667 247.33333,410 234.66667,330.66667 278,248 254,242.66667 258.66667,200.66667

296.66667,139.33333 272.66667,140" />

        <Path x:Name="C2Path" Opacity="0.01" Fill="#FFFFFFFF" Stretch="Fill" Stroke="#FF000000"

Width="91" Height="136.333319306374" Canvas.Left="263.5" Canvas.Top="105.500005066396"

Data="M325.33333,106.66667 L264,202.66667 266,241.33333 307.33333,238.66667 354,

138 351.33333,106.66666 326.66667,106" />

        <Path x:Name="DPath" Opacity="0.01" Fill="#FFFFFFFF" Stretch="Fill" Stroke="#FF000000"

Width="131" Height="274.333297729492" Canvas.Left="247.499999999999"

Canvas.Top="137.499984741212" Data="M358,142.66667 L311.33333,243.33333 288.66667,246

248,330.66667 258,338 266.66667,411.33333 354,410.66665 347.33333,330.66668 374,

246.66668 350,243.33336 352.66667,202.66669 378,138.00005 360.66667,140.00005" />

        <Path x:Name="D2Path" Opacity="0.01" Fill="#FFFFFFFF" Stretch="Fill" Stroke="#FF000000"

Width="70.3333129882813" Height="134.333319425583" Canvas.Left="356.83334350586"

Canvas.Top="107.500003457069" Data="M394.66667,108.66667 L357.33333,204 359.33333,241.

33333 398,240.66667 426.66667,134.66667 425.33333,108" />

        <Path x:Name="EPath" Opacity="0.01" Fill="#FFFFFFFF" Stretch="Fill" Stroke="#FF000000"

Width="117.666656494141" Height="274.333343505859" Canvas.Left="358.833343505859"

Canvas.Top="137.5" Data="M431.33333,140 L403.33333,245.33333 381.33333,248 359.33333,

330 368.66667,339.33333 372,411.33333 458,411.33333 455.33333,331.33333 476,138

433.33333,138.66667" />

        <Path x:Name="FPath" Opacity="0.01" Fill="#FFFFFFFF" Stretch="Fill" Stroke="#FF000000"

Width="99.6666564941406" Height="273.666680037975" Canvas.Left="470.83334350586"

Canvas.Top="138.833345949649" Data="M486.66667,140.66667 L471.33333,332 477.33333,

334 476.66667,412 563.33333,411.33335 564,339.33334 570,328 560,246.66665 535.33333,

243.33331 530,139.3333 486.66667,139.33329" />

        <Path x:Name="F2Path" Opacity="0.01" Fill="#FFFFFFFF" Stretch="Fill" Stroke="#FF000000"

Width="51" Height="133.666656494141" Canvas.Left="534.166687011719" Canvas.Top

="108.16665649414" Data="M538.66667,109.33333 L534.66667,137.33333 542,241.33333 584,

240.66666 584.66667,205.33334 568,108.66667 540.66667,108.66668" />

        <Path x:Name="GPath" Opacity="0.01" Fill="#FFFFFFFF" Stretch="Fill" Stroke="#FF000000"

Width="111" Height="274.333343505859" Canvas.Left="570.166687011719"

时间: 2024-12-14 04:53:10

稳扎稳打Silverlight(2) - 1.0实例之支持录音和回放的钢琴(Silverlight+ASP.NET AJAX+DLINQ)的相关文章

稳扎稳打Silverlight(1) - 1.0实例之电子表

本系列文章导航 稳扎稳打Silverlight(1) - 1.0实例之电子表 稳扎稳打Silverlight(2) - 1.0实例之支持录音和回放的钢琴(Silverlight+ASP.NET AJAX+DLINQ) 稳扎稳打Silverlight(3) - 2.0控件之Border, Button, Calendar, Canvas, CheckBox, ComboBox 介绍用Silverlight 1.0实现一个基于客户端系统时间的电子表.参考:http://silverlight.net

超强分页类2.0发布,支持自定义风格,默认4种显示模式_php实例

超强分页类2.0发布,支持自定义风格,默认4种显示模式 看到论坛上有人求百度分页类,所以把几周前的分页类贴出来.    2.0相对1.0修正如下:   1.支持PHP4和PHP5   2.增加了对ajax分页的功能   3.优化了程序整体结构   4.增加了自定义风格的功能 代码如下:  复制代码 代码如下: <?  /**   * filename: ext_page.class.php   * @package:phpbean   * @author :feifengxlq<feifeng

VEGAS 5.0 音频新手入门——录音的软件操作实例

第四课 录音的软件操作实例 录音对系统配置及操作系统的基本要求:支持win98以上的所有操作系统,DX8.1上,推荐DX9.0B,内存当然越大越好,128MB的内存推荐使用win98,256MB内存以上推荐使用winxp,CPU当然是越快越好,挂DX插件多的话系统资源耗的少些,一般现在的主流或者稍落伍的电脑都没问题,硬盘当然是越大越好,最好是7200转的,在多轨混音时可以跑更多的轨,系统的DMA通道一定要打开(inter系列和SII系列的主板安装它的应用增强程序自动打开,VIA系列的主板安装4I

php导出csv文件,可导出前导0实例代码_php实例

实例一:可导出前导0 //导出csv格式文件 $data数据 $title_arr标题 $file_name文件名 function exportCsv($data,$title_arr,$file_name=''){ ini_set("max_execution_time", "3600"); $csv_data = ''; /** 标题 */ $nums = count($title_arr); for ($i = 0; $i < $nums - 1; +

[渣译文] SignalR 2.0 系列: 支持的平台

原文:[渣译文] SignalR 2.0 系列: 支持的平台 英文渣水平,大伙凑合着看吧,并不是逐字翻译的-- 这是微软官方SignalR 2.0教程Getting Started with ASP.NET SignalR 2.0系列的翻译,这里是第二篇:支持的平台 原文:Supported Platforms SignalR支持多种服务器和客户端配置.此外,每种传输方式都有自身的要求限制:如果某种传输方式不被系统支持,SignalR能够优雅地将故障转移到其他类型的传输方式.关于SignalR所

Silverlight+WCF 新手实例 象棋 主界面-棋谱-回放-结局(四十)

查看本系列其他相关文章请点击:Silverlight+WCF 新手实例象棋专题索引 在线演示地址:Silverlight+WCF 新手实例 象棋 在线演示 在Silverlight+WCF 新手实例 象棋 主界面-棋谱-回放(三十九)中,我们实现了用户的棋谱回放,在文章的下面,我们曾留下了两个问题: 下棋者在下棋过程,要不要开放"回放"功能,如果开放,需要注意什么? 观众在回放过程中,突然又传来一个棋步,需要注意什么? 在解答这两个问题之前,我们先来解答上一篇的截图中发现的问题: 不知

本地化SilverLight应用程序(多语言支持)

原文 http://www.cnblogs.com/seaworm/archive/2010/11/30/1892325.html 利用资源文件(Resources File)使SilverLight支持多语言. 1. 创建一个SilverLight应用程序. 2. 添加一个资源文件,命名为ApplicationStrings.resx. 3. 添加String类型的资源,这里添加 UsernameString:User Name.设置Access Modeifer为Public. 4. 为了让

php导出csv文件,可导出前导0实例代码

实例一:可导出前导0 //导出csv格式文件 $data数据 $title_arr标题 $file_name文件名 function exportCsv($data,$title_arr,$file_name=''){ ini_set("max_execution_time", "3600"); $csv_data = ''; /** 标题 */ $nums = count($title_arr); for ($i = 0; $i < $nums - 1; +

一起谈.NET技术,Silverlight+WCF 新手实例 象棋 主界面-棋谱-回放-结局(四十)

查看本系列其他相关文章请点击:Silverlight+WCF 新手实例象棋专题索引 在线演示地址:Silverlight+WCF 新手实例 象棋 在线演示 在Silverlight+WCF 新手实例 象棋 主界面-棋谱-回放(三十九)中,我们实现了用户的棋谱回放,在文章的下面,我们曾留下了两个问题: 下棋者在下棋过程,要不要开放"回放"功能,如果开放,需要注意什么? 观众在回放过程中,突然又传来一个棋步,需要注意什么? 在解答这两个问题之前,我们先来解答上一篇的截图中发现的问题: 不知