I. 页面代码(Default.aspx)
<
html
xmlns="http://www.w3.org/1999/xhtml" >
<
head
runat="server">
<title>Silverlight
对象的定位</title>
<script type="text/javascript" src="..\Silverlight.js"></script>
<script type="text/javascript" src="Default.aspx.js"></script>
</
head
>
<
body
>
<form id="form1" runat="server">
<div id="SilverlightControlHost1" >
<script type="text/javascript">
createSilverlight1();
</script>
</div>
<hr>
<div id="SilverlightControlHost2" >
<script type="text/javascript">
createSilverlight2();
</script>
</div>
<hr>
<div id="SilverlightControlHost3" >
<script type="text/javascript">
createSilverlight3();
</script>
</div>
<hr>
<div id="SilverlightControlHost4" >
<script type="text/javascript">
createSilverlight4();
</script>
</div>
<hr>
<div id="SilverlightControlHost5" >
<script type="text/javascript">
createSilverlight5();
</script>
</div>
</form>
</
body
>
</
html
>
II. 页面对应的JS文件代码(Default.aspx.js)
//
创建对象
function
createSilverlight1()
{
Silverlight.createObjectEx({
source: "Page1.xaml",
parentElement: document.getElementById("SilverlightControlHost1"),
id: "SilverlightControl1",
properties: {
width: "350",
height: "350",
version: "1.0",
background: "white",
isWindowless: "true",
enableHtmlAccess: "true"
},
events: {}
});
}
function
createSilverlight2()
{
Silverlight.createObjectEx({
source: "Page2.xaml",
parentElement: document.getElementById("SilverlightControlHost2"),
id: "SilverlightControl2",
properties: {
width: "350",
height: "350",
version: "1.0",
background: "white",
isWindowless: "true",
enableHtmlAccess: "true"
},
events: {}
});
}
function
createSilverlight3()
{
Silverlight.createObjectEx({
source: "Page3.xaml",
parentElement: document.getElementById("SilverlightControlHost3"),
id: "SilverlightControl3",
properties: {
width: "350",
height: "350",
version: "1.0",
background: "white",
isWindowless: "true",
enableHtmlAccess: "true"
},
events: {}
});
}
function
createSilverlight4()
{
Silverlight.createObjectEx({
source: "Page4.xaml",
parentElement: document.getElementById("SilverlightControlHost4"),
id: "SilverlightControl4",
properties: {
width: "350",
height: "350",
version: "1.0",
background: "white",
isWindowless: "true",
enableHtmlAccess: "true"
},
events: {}
});
}
function
createSilverlight5()
{
Silverlight.createObjectEx({
source: "Page5.xaml",
parentElement: document.getElementById("SilverlightControlHost5"),
id: "SilverlightControl5",
properties: {
width: "350",
height: "350",
version: "1.0",
background: "white",
isWindowless: "true",
enableHtmlAccess: "true"
},
events: {}
});
}
III.Xaml文件代码
1. Page1.xaml代码
<
Canvas
xmlns
=
"http://schemas.microsoft.com/client/2007"
xmlns:x
=
"http://schemas.microsoft.com/winfx/2006/xaml"
Width
=
"640"Height="480"
Background
=
"LightGreen"
Canvas.Left
=
"10"
Canvas.Top
=
"10"
>
<
Rectangle
Canvas.Left
=
"30"Canvas.Top="30"Fill="LightBlue"
Width
=
"200"Height="200" />
</
Canvas
>
2. Page2.xaml代码
<
Canvas
xmlns
=
"http://schemas.microsoft.com/client/2007"
xmlns:x
=
"http://schemas.microsoft.com/winfx/2006/xaml"
Width
=
"300"Height="300"
Background
=
"White">
<
Canvas
Width
=
"250"Height="250"Canvas.Left="30"Canvas.Top="30"Background="LightBlue">
<
Rectangle
Canvas.Left
=
"30"Canvas.Top="30"Fill="LightGreen"
Width
=
"200"Height="200" />
</
Canvas
>
</
Canvas
>
3. Page3.xaml代码
<
Canvas
xmlns
=
"http://schemas.microsoft.com/client/2007"
xmlns:x
=
"http://schemas.microsoft.com/winfx/2006/xaml"
Width
=
"300"Height="300"
Background
=
"White">
<
Line
X1
=
"280"Y1="10"X2="10"Y2="280"
Stroke
=
"Blue"StrokeThickness="5"/>
<
Polyline
Points
=
"150, 150 150, 250 250, 250 250, 150"
Stroke
=
"Yellow"StrokeThickness="10"/>
<
Path
Data
=
"M 10,100 C 10,300 300,-200 250,100z"
Stroke
=
"Red"Fill="Orange"
Canvas.Left
=
"10"Canvas.Top="10" />
</
Canvas
>
4. Page4.xaml代码
<
Canvas
xmlns
=
"http://schemas.microsoft.com/client/2007"
xmlns:x
=
"http://schemas.microsoft.com/winfx/2006/xaml"
Width
=
"200"Height="200">
<
Rectangle
Canvas.Left
=
"100"Canvas.Top="100"
Width
=
"50"Height="50"
Fill
=
"RoyalBlue">
<
Rectangle.RenderTransform
>
<
RotateTransform
Angle
=
"45" />
</
Rectangle.RenderTransform
>
</
Rectangle
>
</
Canvas
>
5. Page5.xaml代码
<
Canvas
xmlns
=
"http://schemas.microsoft.com/client/2007"
xmlns:x
=
"http://schemas.microsoft.com/winfx/2006/xaml">
<
Ellipse
Canvas.ZIndex
=
"3"
Canvas.Left
=
"5"Canvas.Top="5"
Height
=
"200"Width="200"
Stroke
=
"Black"StrokeThickness="10"Fill="Silver" />
<
Ellipse
Canvas.ZIndex
=
"2"
Canvas.Left
=
"50"Canvas.Top="50"
Height
=
"200"Width="200"
Stroke
=
"Black"StrokeThickness="10"Fill="DeepSkyBlue" />
<
Ellipse
Canvas.ZIndex
=
"1"
Canvas.Left
=
"95"Canvas.Top="95"
Height
=
"200"Width="200"
Stroke
=
"Black"StrokeThickness="10"Fill="Lime" />
</
Canvas
>
|
I. 页面代码(Default.aspx)
<
html
xmlns="http://www.w3.org/1999/xhtml" >
<
head
runat="server">
<title>
访问Silverlight插件</title>
<script type="text/javascript" src="..\Silverlight.js"></script>
<script type="text/javascript" src="Default.aspx.js"></script>
</
head
>
<
body
onload="document.getElementById('SilverlightControlHost').focus()">
<form id="form1" runat="server">
<div id="SilverlightControlHost" >
<script type="text/javascript">
createSilverlight();
</script>
</div>
</form>
</
body
>
</
html
>
II.Xaml文件代码
<
Canvas
Name
=
"parentCanvas"
Opacity
=
"0"
xmlns
=
"http://schemas.microsoft.com/client/2007"
xmlns:x
=
"http://schemas.microsoft.com/winfx/2006/xaml"
Loaded
=
"onLoaded"MouseLeftButtonDown="MouseLeftButtonDown"
>
<
Canvas.Triggers
>
<
EventTrigger
RoutedEvent
=
"Canvas.Loaded">
<
EventTrigger.Actions
>
<
BeginStoryboard
>
<
Storyboard
>
<
DoubleAnimation
Storyboard.TargetName
=
"parentCanvas"Storyboard.TargetProperty="Opacity"From="0"To="1"Duration="0:0:5"/>
</
Storyboard
>
</
BeginStoryboard
>
</
EventTrigger.Actions
>
</
EventTrigger
>
</
Canvas.Triggers
>
<
TextBlock
Name
=
"helloBlock"Foreground="Black"Cursor="Hand"Text="King" />
</
Canvas
>
III.页面对应的JS文件代码(Default.aspx.js)
function
createSilverlight()
{
Silverlight.createObjectEx({
source: "Page.xaml",
parentElement: document.getElementById("SilverlightControlHost"),
id: "SilverlightControl",
properties: {
width: "350",
height: "350",
version: "1.0",
background: "white",
isWindowless: "true",
enableHtmlAccess: "true"
},
events: {onLoad:onLoad}
});
}
//
判断当前安装插件的版本
function
onLoaded(sender, eventArgs)
{
var version = "1.1";
var isInstalled = Silverlight.isInstalled(version);
alert(isInstalled);
}
//
访问运行中插件
function
MouseLeftButtonDown(sender, mouseEventArgs)
{
var plugin = sender.getHost();
alert("Silverlight V1.1 supported: " + plugin.isVersionSupported("1.1"));//plugin
alert("IsLoaded: " + plugin.IsLoaded);//plugin
alert("Background: " + plugin.Settings.Background); //plugin.Settings
alert("ActualHeight: " + plugin.Content.ActualHeight );//plugin.Content
}
function
onLoad(plugin, userContext, sender)
{
alert(plugin.id + " : " + userContext + " : " + sender.toString());
}
|
I. 页面代码(Default.aspx)
<
html
xmlns="http://www.w3.org/1999/xhtml" >
<
head
runat="server">
<title>Silverlight
元素的鼠标进入/离开事件</title>
<script type="text/javascript" src="..\..\Silverlight.js"></script>
<script type="text/javascript" src="Default.aspx.js"></script>
</
head
>
<
body
onload="document.getElementById('SilverlightControlHost').focus()">
<form id="form1" runat="server">
<div id="SilverlightControlHost" >
<script type="text/javascript">
createSilverlight();
</script>
</div>
</form>
</
body
>
</
html
>
II.Xaml文件代码
<
Canvas
xmlns
=
"http://schemas.microsoft.com/client/2007"
xmlns:x
=
"http://schemas.microsoft.com/winfx/2006/xaml"
Loaded
=
"onLoaded">
<
Ellipse
MouseEnter
=
"onMouseEnter"
MouseLeave
=
"onMouseLeave"
Height
=
"100"Width="100"
Fill
=
"Teal"Name="Ellispse1" />
<
Ellipse
MouseEnter
=
"onMouseEnter"
MouseLeave
=
"onMouseLeave"
Canvas.Left
=
"120"
Height
=
"100"Width="100"
Fill
=
"Teal"Name="Ellispse2" />
<
TextBlock
Name
=
"Status"Canvas.Top="120" />
<
TextBlock
Name
=
"RemoveClickEvent"Canvas.Top="250"Text="Click Me Remove Mouse Click Event"MouseLeftButtonDown="onMouseDownRemoveEvent" />
</
Canvas
>
III.页面对应的JS文件代码(Default.aspx.js)
function
createSilverlight()
{
Silverlight.createObjectEx({
source: "Page.xaml",
parentElement: document.getElementById("SilverlightControlHost"),
id: "SilverlightControl",
properties: {
width: "350",
height: "350",
version: "1.0",
background: "white",
isWindowless: "true",
enableHtmlAccess: "true"
},
events: {}
});
}
function
onMouseEnter(sender, mouseEventArgs)
{
sender.fill = "Coral";
}
function
onMouseLeave(sender, eventArgs)
{
sender.fill = "Teal";
}
var
entertoken1, entertoken2,entertoken1,entertoken2;
function
onLoaded(sender, eventArgs)
{
Ellispse1 = sender.findName("Ellispse1");
Ellispse2 = sender.findName("Ellispse2");
entertoken1 = Ellispse1.addEventListener("MouseLeftButtonUp", onMouseLeftButtonUp);
entertoken2 = Ellispse2.addEventListener("MouseLeftButtonUp", onMouseLeftButtonUp);
}
function
onMouseLeftButtonUp(sender, mouseEventArgs)
{
var pt = mouseEventArgs.getPosition(null);
sender.findName("Status").text = "(" + pt.x + "," + pt.y + ")";
}
function
onMouseDownRemoveEvent(sender, mouseEventArgs)
{
Ellispse1.removeEventListener("MouseLeftButtonUp", entertoken1);
Ellispse2.removeEventListener("MouseLeftButtonUp", entertoken2);
}
|
I. 页面代码(Default.aspx)
<
html
xmlns="http://www.w3.org/1999/xhtml" >
<
head
runat="server">
<title>Silverlight
元素的鼠标点击/移动事件</title>
<script type="text/javascript" src="..\..\Silverlight.js"></script>
<script type="text/javascript" src="Default.aspx.js"></script>
</
head
>
<
body
onload="document.getElementById('SilverlightControlHost').focus()">
<form id="form1" runat="server">
<div id="SilverlightControlHost" >
<script type="text/javascript">
createSilverlight();
</script>
</div>
</form>
</
body
>
</
html
>
II.Xaml文件代码
<
Canvas
xmlns
=
"http://schemas.microsoft.com/client/2007"
xmlns:x
=
"http://schemas.microsoft.com/winfx/2006/xaml"
MouseLeftButtonDown
=
"onMouseDown"
MouseLeftButtonUp
=
"onMouseUp"
MouseMove
=
"onMouseMove"
Canvas.Top
=
"20"Canvas.Left="50">
<
Ellipse
Height
=
"100"Width="100"
Fill
=
"Gold"
Stroke
=
"Black"StrokeThickness="4" />
<
Ellipse
Height
=
"50"Width="50"
Canvas.Top
=
"25"Canvas.Left="25"
Fill
=
"Black" />
<
Canvas
MouseLeftButtonDown
=
"onMouseDown"
MouseLeftButtonUp
=
"onMouseUp"
MouseMove
=
"onMouseMove"
Canvas.Top
=
"140"Canvas.Left="100">
<
Canvas.RenderTransform
>
<
RotateTransform
Angle
=
"45" />
</
Canvas.RenderTransform
>
<
Rectangle
Height
=
"100"Width="100"
Fill
=
"Coral"
Stroke
=
"Black"StrokeThickness="4" />
</
Canvas
>
</
Canvas
>
III.页面对应的JS文件代码(Default.aspx.js)
function
createSilverlight()
{
Silverlight.createObjectEx({
source: "Page.xaml",
parentElement: document.getElementById("SilverlightControlHost"),
id: "SilverlightControl",
properties: {
width: "350",
height: "350",
version: "1.0",
background: "white",
isWindowless: "true",
enableHtmlAccess: "true"
},
events: {}
});
}
var
beginX;
var
beginY;
var
isMouseDown = false;
function
onMouseDown(sender, mouseEventArgs)
{
beginX = mouseEventArgs.getPosition(null).x;
beginY = mouseEventArgs.getPosition(null).y;
isMouseDown = true;
//
使当前控件获取鼠标焦点, 即使光标不在该元素上
sender.captureMouse();
}
function
onMouseMove(sender, mouseEventArgs)
{
if (isMouseDown == true)
{
var currX = mouseEventArgs.getPosition(null).x;
var currY = mouseEventArgs.getPosition(null).y;
sender["Canvas.Left"] += currX - beginX;
sender["Canvas.Top"] += currY - beginY;
beginX = currX;
beginY = currY;
}
}
function
onMouseMove(sender, mouseEventArgs)
{
if (isMouseDown == true)
{
var currX = mouseEventArgs.getPosition(null).x;
var currY = mouseEventArgs.getPosition(null).y;
sender["Canvas.Left"] += currX - beginX;
sender["Canvas.Top"] += currY - beginY;
beginX = currX;
beginY = currY;
}
}
function
onMouseUp(sender, mouseEventArgs)
{
isMouseDown = false;
sender.releaseMouseCapture();
}
|
I. 页面代码(Default.aspx)
<
html
xmlns="http://www.w3.org/1999/xhtml" >
<
head
runat="server">
<title>Canvas
键盘按键事件</title>
<script type="text/javascript" src="..\Silverlight.js"></script>
<script type="text/javascript" src="Default.aspx.js"></script>
</
head
>
<
body
onload="document.getElementById('SilverlightControlHost').focus()">
<form id="form1" runat="server">
<div id="SilverlightControlHost" >
<script type="text/javascript">
createSilverlight();
</script>
</div>
</form>
</
body
>
</
html
>
II.Xaml文件代码
<
Canvas
Name
=
"parentCanvas"
xmlns
=
"http://schemas.microsoft.com/client/2007"
xmlns:x
=
"http://schemas.microsoft.com/winfx/2006/xaml"
KeyDown
=
"onKeyDown"
>
<
TextBlock
Name
=
"helloBlock"Foreground="Black"Cursor="Hand"Text="King" />
</
Canvas
>
III.页面对应的JS文件代码(Default.aspx.js)
function
createSilverlight()
{
Silverlight.createObjectEx({
source: "Page.xaml",
parentElement: document.getElementById("SilverlightControlHost"),
id: "SilverlightControl",
properties: {
width: "350",
height: "350",
version: "1.0",
background: "white",
isWindowless: "true",
enableHtmlAccess: "true"
},
events: {}
});
}
function
onKeyDown(sender, keyEventArgs)
{
var msg;
msg = " Press Shift = " + keyEventArgs.shift;
msg += " Press Ctrl = " + keyEventArgs.ctrl;
msg += " Key = " + keyEventArgs.key;
msg += " PlatformKeyCode = " + keyEventArgs.PlatformKeyCode;
msg += " The Platform is windows = " + (navigator.userAgent.indexOf("Windows") != -1);
alert(msg);
}
|
I. 页面代码(Default.aspx)
<
html
xmlns="http://www.w3.org/1999/xhtml" >
<
head
runat="server">
<title>createFromXaml
方法使用示例</title>
<script type="text/javascript" src="..\Silverlight.js"></script>
<script type="text/javascript" src="Default.aspx.js"></script>
</
head
>
<
body
onload="document.getElementById('SilverlightControlHost').focus()">
<form id="form1" runat="server">
<div id="SilverlightControlHost" >
<script type="text/javascript">
createSilverlight();
</script>
</div>
</form>
</
body
>
</
html
>
II.Xaml文件代码
<
Canvas
Name
=
"parentCanvas"
xmlns
=
"http://schemas.microsoft.com/client/2007"
xmlns:x
=
"http://schemas.microsoft.com/winfx/2006/xaml"
MouseLeftButtonDown
=
"onMouseLeftButtonDown"
Width
=
"100"Height="100"Background="LightBlue"
>
</
Canvas
>
III.页面对应的JS文件代码(Default.aspx.js)
function
createSilverlight()
{
Silverlight.createObjectEx({
source: "Page.xaml",
parentElement: document.getElementById("SilverlightControlHost"),
id: "SilverlightControl",
properties: {
width: "350",
height: "350",
version: "1.0",
background: "white",
isWindowless: "true",
enableHtmlAccess: "true"
},
events: {}
});
}
function
onMouseLeftButtonDown(sender, eventArgs)
{
var plugin = sender.getHost();
var xamlFragment = '<TextBlock Canvas.Top="0" Text="I was created by createFromXaml method!" />';
textBlock = plugin.content.createFromXaml(xamlFragment);
var xamlFragment2 = '<Ellipse Canvas.ZIndex="1" Canvas.Left="95" Canvas.Top="95" Height="200" Width="200" Stroke="Black" StrokeThickness="10" Fill="Lime" />';
ellipse = plugin.content.createFromXaml(xamlFragment2);
ellipse.fill = createLinearGradientBrush(plugin);
sender.children.add(textBlock);
sender.children.add(ellipse);
}
function
createLinearGradientBrush(plugin)
{
var xamlFragment = '<LinearGradientBrush>';
xamlFragment += '<GradientStop Color="Yellow" Offset="0.0" />';
xamlFragment += '<GradientStop Color="Orange" Offset="0.5" />';
xamlFragment += '<GradientStop Color="Red" Offset="1.0" />';
xamlFragment += '</LinearGradientBrush>';
return plugin.content.createFromXaml(xamlFragment);
}
|
I. 页面代码(Default.aspx)
<
html
xmlns="http://www.w3.org/1999/xhtml" >
<
head
runat="server">
<title>
访问和修改Silverlight元素以及属性</title>
<script type="text/javascript" src="..\Silverlight.js"></script>
<script type="text/javascript" src="Default.aspx.js"></script>
</
head
>
<
body
onload="document.getElementById('SilverlightControlHost').focus()">
<form id="form1" runat="server">
<div id="SilverlightControlHost" >
<script type="text/javascript">
createSilverlight();
</script>
</div>
</form>
</
body
>
</
html
>
II.Xaml文件代码
<
Canvas
Name
=
"parentCanvas"
xmlns
=
"http://schemas.microsoft.com/client/2007"
xmlns:x
=
"http://schemas.microsoft.com/winfx/2006/xaml"
Loaded
=
"onLoaded"
>
<
TextBlock
Name
=
"TextBlock1"Foreground="Black"Cursor="Hand" />
<
TextBlock
Name
=
"TextBlock2"Foreground="Black"Cursor="Hand"Canvas.Top="20" />
<
TextBlock
Name
=
"TextBlock3"Foreground="Black"Cursor="Hand"Canvas.Top="40" />
</
Canvas
>
III.页面对应的JS文件代码(Default.aspx.js)
function
createSilverlight()
{
Silverlight.createObjectEx({
source: "Page.xaml",
parentElement: document.getElementById("SilverlightControlHost"),
id: "SilverlightControl",
properties: {
width: "350",
height: "350",
version: "1.0",
background: "white",
isWindowless: "true",
enableHtmlAccess: "true"
},
events: {}
});
}
function
onLoaded(sender, eventArgs)
{
//findName Method
sender.findName("TextBlock1").text = "King1";
//getItem Method
sender.children.getItem(1).text = "King2";
//getValue
和setValue 方法
var textBlock3 = sender.findName("TextBlock3");
textBlock3.text = "King3";
var text = textBlock3.getValue("text");
textBlock3.setValue("text", text);
//Extend Property
textBlock3["Canvas.Top"] = 40; //
自己修改一下该值
}
|
I. 页面代码(Default.aspx)
<
html
xmlns="http://www.w3.org/1999/xhtml" >
<
head
runat="server">
<title>Silverlight
中的字体</title>
<script type="text/javascript" src="..\Silverlight.js"></script>
<script type="text/javascript" src="Default.aspx.js"></script>
</
head
>
<
body
onload="document.getElementById('SilverlightControlHost').focus()">
<form id="form1" runat="server">
<div id="SilverlightControlHost" >
<script type="text/javascript">
createSilverlight();
</script>
</div>
</form>
</
body
>
</
html
>
II.Xaml文件代码
<
Canvas
Name
=
"parentCanvas"
xmlns
=
"http://schemas.microsoft.com/client/2007"
xmlns:x
=
"http://schemas.microsoft.com/winfx/2006/xaml"
Loaded
=
"onLoaded"
>
<
TextBlock
Text
=
"Font Attributes"
FontFamily
=
"Verdana"
FontSize
=
"36"
FontStretch
=
"UltraExpanded"
FontStyle
=
"Italic"
FontWeight
=
"ExtraBlack" />
<!--
Run
对象是一个文字元素
-->
<
TextBlock
Canvas.Top
=
"60"
FontFamily
=
"Arial"Width="400"Text="Sample text formatting runs">
<
LineBreak
/>
<
Run
Foreground
=
"Maroon"FontFamily="Courier New"FontSize="24">Courier New 24</Run>
<
LineBreak
/>
<
Run
Foreground
=
"Teal"FontFamily="Times New Roman"FontSize="18"FontStyle="Italic">Times New Roman Italic 18</Run>
<
LineBreak
/>
<
Run
Foreground
=
"SteelBlue"FontFamily="Verdana"FontSize="14"FontWeight="Bold">Verdana Bold 14</Run>
</
TextBlock
>
<
TextBlock
Canvas.Top
=
"150"
FontFamily
=
"Arial"
FontSize
=
"32"
FontWeight
=
"Bold"
Foreground
=
"Navy">
Navy
<
Run
Text
=
"DodgerBlue "Foreground="DodgerBlue"/>
<
Run
Text
=
"LightSteelBlue "Foreground="LightSteelBlue"/>
</
TextBlock
>
<
TextBlock
Canvas.Top
=
"200"
FontFamily
=
"Verdana"
FontSize
=
"32"
FontWeight
=
"Bold">
LINEAR GRADIENT BRUSH
<
TextBlock.Foreground
>
<
LinearGradientBrush
StartPoint
=
"0,0"EndPoint="1,1">
<
GradientStop
Color
=
"Red"Offset="0.0" />
<
GradientStop
Color
=
"Orange"Offset="0.2" />
<
GradientStop
Color
=
"Yellow"Offset="0.4" />
<
GradientStop
Color
=
"Green"Offset="0.6" />
<
GradientStop
Color
=
"Blue"Offset="0.8" />
<
GradientStop
Color
=
"Violet"Offset="1.0" />
</
LinearGradientBrush
>
</
TextBlock.Foreground
>
<
TextBlock.RenderTransform
>
<
ScaleTransform
ScaleY
=
"3.0" />
</
TextBlock.RenderTransform
>
</
TextBlock
>
<
TextBlock
Text
=
"Rotated Text"FontSize="32"Foreground="Teal"Canvas.Top="300">
<
TextBlock.RenderTransform
>
<
RotateTransform
Angle
=
"90" />
</
TextBlock.RenderTransform
>
</
TextBlock
>
<
TextBlock
Canvas.Top
=
"400"
FontSize
=
"32"
FontWeight
=
"Bold"
Foreground
=
"Maroon"
Text
=
"Skewed Text">
<
TextBlock.RenderTransform
>
<
SkewTransform
AngleX
=
"-30"AngleY="0" />
</
TextBlock.RenderTransform
>
</
TextBlock
>
<
TextBlock
Canvas.Top
=
"450"
FontSize
=
"32"
FontWeight
=
"Bold"
Foreground
=
"Maroon"
Text
=
"Skewed Text">
<
TextBlock.RenderTransform
>
<
SkewTransform
AngleX
=
"30"AngleY="0" />
</
TextBlock.RenderTransform
>
</
TextBlock
>
</
Canvas
>
III.页面对应的JS文件代码(Default.aspx.js)
function
createSilverlight()
{
Silverlight.createObjectEx({
source: "Page.xaml",
parentElement: document.getElementById("SilverlightControlHost"),
id: "SilverlightControl",
properties: {
width: "350",
height: "1000",
version: "1.0",
background: "white",
isWindowless: "true",
enableHtmlAccess: "true"
},
events: {}
});
}
function
onLoaded(sender, eventArgs)
{
}
|
I. 页面代码(Default.aspx)
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="Default.aspx.js"></script>
</
head
>
<
body
onload="document.getElementById('SilverlightControlHost').focus()">
<form id="form1" runat="server">
<div id="SilverlightControlHost" >
<script type="text/javascript">
createSilverlight();
</script>
</div>
</form>
</
body
>
</
html
>
II.Xaml文件代码
<
Canvas
xmlns
=
"http://schemas.microsoft.com/client/2007"
xmlns:x
=
"http://schemas.microsoft.com/winfx/2006/xaml"
Width
=
"300"Height="300"Loaded="onLoaded">
<
MediaElement
Name
=
"media"Source="http://jd.ikmtv.com/mymtv123/
许志安_光辉岁月.wmv
"Width="300"Height="300"MouseLeftButtonUp="onMouseLeftButtonUp" />
</
Canvas
>
III.页面对应的JS文件代码(Default.aspx.js)
function
createSilverlight()
{
Silverlight.createObjectEx({
source: "Page.xaml",
parentElement: document.getElementById("SilverlightControlHost"),
id: "SilverlightControl",
properties: {
width: "350",
height: "500",
version: "1.0",
background: "white",
isWindowless: "true",
enableHtmlAccess: "true"
},
events: {}
});
}
//
双击事件
function
onMouseLeftButtonUp(sender, mouseEventArgs)
{
//plugin.content.fullScreen = !plugin.content.fullScreen;
var b=(new Date).getTime(),c=this._timeLastLeftButtonUp;
this._timeLastLeftButtonUp=b;
var a=c&&b-c<300;
if(a)
{
//
处理双击事件
this._timeLastLeftButtonUp=0;
var plugin=sender.getHost();
plugin.content.fullScreen = !plugin.content.fullScreen;
}
else
{
//
处理单击事件
}
}
var
media;
function
onLoaded(sender, mouseEventArgs)
{
media = sender.findName("media");
//
处理FullScreenChangeded事件
plugin = sender.getHost();
plugin.content.onFullScreenChange = onFullScreenChanged;
updateLayout(plugin.content.actualWidth, plugin.content.actualHeight);
}
function
onFullScreenChanged(sender, eventArgs)
{
updateLayout(plugin.content.actualWidth, plugin.content.actualHeight);
}
function
updateLayout(width, height)
{
media.width=width;
media.height=height;
}
|
I. 页面代码(Default.aspx)
<
html
xmlns="http://www.w3.org/1999/xhtml" >
<
head
runat="server">
<title>Silverlight Downloader
对象使用</title>
<script type="text/javascript" src="..\Silverlight.js"></script>
<script type="text/javascript" src="Default.aspx.js"></script>
</
head
>
<
body
onload="document.getElementById('SilverlightControlHost').focus()">
<form id="form1" runat="server">
<div id="SilverlightControlHost" >
<script type="text/javascript">
createSilverlight();
</script>
</div>
</form>
</
body
>
</
html
>
II.Xaml文件代码
<
Canvas
Name
=
"parentCanvas"
xmlns
=
"http://schemas.microsoft.com/client/2007"
xmlns:x
=
"http://schemas.microsoft.com/winfx/2006/xaml"
Loaded
=
"onLoaded"
>
<
Canvas
MouseLeftButtonDown
=
"onMouseLeftButtonDown"Canvas.Left="10">
<
Rectangle
Stroke
=
"Black"Height="30"Width="250"RadiusX="5"RadiusY="5">
<
Rectangle.Fill
>
<
RadialGradientBrush
GradientOrigin
=
"0.75,0.25">
<
GradientStop
Color
=
"Orange"Offset="0.0" />
<
GradientStop
Color
=
"Red"Offset="1.0" />
</
RadialGradientBrush
>
</
Rectangle.Fill
>
</
Rectangle
>
<
TextBlock
Canvas.Left
=
"10"Canvas.Top="5">Click me to download a picture!</TextBlock>
</
Canvas
>
<!--
下载进度条
-->
<
Canvas
Canvas.Top
=
"70">
<
Rectangle
Name
=
"progressRectangle"
Canvas.Left
=
"20"
Height
=
"10"Width="0"
Fill
=
"Maroon" />
<
Rectangle
Canvas.Top
=
"-1"
Canvas.Left
=
"19"Height="12"
Width
=
"202"
StrokeThickness
=
"1"Stroke="Black" />
<
TextBlock
Name
=
"progressText"
Canvas.Top
=
"-4"Canvas.Left="230"
Text
=
"0%"FontSize="12" />
</
Canvas
>
<
TextBlock
Canvas.Top
=
"100"Width="100"Height="100"FontSize="72">
King,King,King
<
TextBlock.Foreground
>
<
ImageBrush
Name
=
"imageBrush" />
</
TextBlock.Foreground
>
</
TextBlock
>
</
Canvas
>
III.页面对应的JS文件代码(Default.aspx.js)
function
createSilverlight()
{
Silverlight.createObjectEx({
source: "Page.xaml",
parentElement: document.getElementById("SilverlightControlHost"),
id: "SilverlightControl",
properties: {
width: "350",
height: "350",
version: "1.0",
background: "white",
isWindowless: "true",
enableHtmlAccess: "true"
},
events: {}
});
}
function
onLoaded(sender, eventArgs)
{
progressText = sender.findName("progressText");
progressRectangle = sender.findName("progressRectangle");
imageBrush = sender.findName("imageBrush");
}
function
onMouseLeftButtonDown(sender, eventArgs)
{
var slPlugin = sender.getHost();
var downloader = slPlugin.createObject("downloader");
downloader.addEventListener("downloadProgressChanged", onDownloadProgressChanged);
downloader.addEventListener("completed", onCompleted);
downloader.open("GET", "Silverlight_Multimedea.JPG");
downloader.send();
}
function
onDownloadProgressChanged(sender, eventArgs)
{
var percentage = Math.floor(sender.downloadProgress * 100);
progressText.text = percentage + "%";
progressRectangle.width = percentage * 2;
}
function
onCompleted(sender, eventArgs)
{
//var xamlFragment = sender.ResponseText;
//var button = plugin.content.createFromXaml(xamlFragment);
var plugin = sender.getHost();
var imageBrush = sender.findName("imageBrush");
imageBrush.setSource(sender,"");
}
|
I. 页面代码(Default.aspx)
<
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="Default.aspx.js"></script>
</
head
>
<
body
onload="document.getElementById('SilverlightControlHost').focus()">
<form id="form1" runat="server">
<div id="SilverlightControlHost" >
<script type="text/javascript">
createSilverlight();
</script>
</div>
</form>
</
body
>
</
html
>
II.Xaml文件代码
<
Canvas
xmlns
=
"http://schemas.microsoft.com/client/2007"
xmlns:x
=
"http://schemas.microsoft.com/winfx/2006/xaml">
<
Canvas.Resources
>
<!--
时间故事版
-->
<
Storyboard
Duration
=
"0:0:1"Completed="StoryboardFinished"x:Name="timerStoryboard" />
</
Canvas.Resources
>
<
Rectangle
Name
=
"MyAnimatedRectangle"
Width
=
"100"
Height
=
"100"
Fill
=
"Blue"
Loaded
=
"StartTimer">
<
Rectangle.Triggers
>
<
EventTrigger
RoutedEvent
=
"Rectangle.Loaded">
<
BeginStoryboard
>
<
Storyboard
>
<
DoubleAnimation
Storyboard.TargetName
=
"MyAnimatedRectangle"
Storyboard.TargetProperty
=
"Opacity"
From
=
"1.0"To="0"Duration="0:0:5"
AutoReverse
=
"True"RepeatBehavior="Forever" />
</
Storyboard
>
</
BeginStoryboard
>
</
EventTrigger
>
</
Rectangle.Triggers
>
</
Rectangle
>
<
TextBlock
Canvas.Top
=
"110"Name="myTextBlock" ></TextBlock>
</
Canvas
>
III.页面对应的JS文件代码(Default.aspx.js)
function
createSilverlight()
{
Silverlight.createObjectEx({
source: "Page.xaml",
parentElement: document.getElementById("SilverlightControlHost"),
id: "SilverlightControl",
properties: {
width: "350",
height: "350",
version: "1.0",
background: "white",
isWindowless: "true",
enableHtmlAccess: "true"
},
events: {}
});
}
function
onLoaded(sender, eventArgs)
{
}
function
StartTimer(sender, mouseEventArgs)
{
var timer = sender.findName("timerStoryboard");
timer.begin();
}
function
StoryboardFinished(sender, mouseEventArgs)
{
var rect = sender.findName("MyAnimatedRectangle");
var txtBlock = sender.findName("myTextBlock");
txtBlock.text = String(rect.opacity);
var timer = sender.findName("timerStoryboard");
timer.begin();
}
|
I. 页面代码(Default.aspx)
<
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="Default.aspx.js"></script>
</
head
>
<
body
onload="document.getElementById('SilverlightControlHost').focus()">
<form id="form1" runat="server">
<div id="SilverlightControlHost" >
<script type="text/javascript">
createSilverlight();
</script>
</div>
</form>
</
body
>
</
html
>
II.Xaml文件代码
<
Canvas
Name
=
"parentCanvas"
xmlns
=
"http://schemas.microsoft.com/client/2007"
xmlns:x
=
"http://schemas.microsoft.com/winfx/2006/xaml"
Loaded
=
"onLoaded">
<
Ellipse
MouseLeftButtonDown
=
"onMouseDownEventHandler"
Height
=
"200"Width="200"
Fill
=
"Teal"Name="Ellispse1" />
<
MediaElement
Name
=
"media"Width="300"Height="300"MediaFailed="MediaFailedHandler" />
</
Canvas
>
III.页面对应的JS文件代码(Default.aspx.js)
function
createSilverlight()
{
Silverlight.createObjectEx({
source: "Page.xaml",
parentElement: document.getElementById("SilverlightControlHost"),
id: "SilverlightControl",
properties: {
width: "350",
height: "350",
version: "1.0",
background: "white",
isWindowless: "true",
enableHtmlAccess: "true"
},
events:
{onError:onErrorandler}
});
}
function
onMouseDownEventHandler(sender, moseEventArgs)
{
var player = sender.findName("media");
//
方式
//player.play();
//return;
//
方式
try
{
player.play();
}
catch(e)
{
alert(e.message);
}
}
//
方式
//
注意: events:{onError:onErrorandler} 中onError:null时将执行此代码
function
MediaFailedHandler(sender, args)
{
var errorMsg = "\n Media Error Message \n" ;
errorMsg += "MediaElement Name: " + sender.Name + "\n";
errorMsg += "Media File Name: " + sender.Source + "\n";
alert(errorMsg);
}
//events:{onError:onErrorandler}
function
onErrorandler(sender, errorArgs)
{
var errorMsg = "Silverlight Error: \n\n";
errorMsg += "Error Type: " + errorArgs.errorType + "\n";
errorMsg += "Error Message: " + errorArgs.errorMessage + "\n";
errorMsg += "Error Code: " + errorArgs.errorCode + "\n";
switch(errorArgs.errorType)
{
case "RuntimeError":
if (errorArgs.lineNumber != 0)
{
errorMsg += "Line: " + errorArgs.lineNumber + "\n";
errorMsg += "Position: " + errorArgs.charPosition + "\n";
}
errorMsg += "MethodName: " + errorArgs.methodName + "\n";
break;
case "ParserError":
errorMsg += "Xaml File: " + errorArgs.xamlFile + "\n";
errorMsg += "Xml Element: " + errorArgs.xmlElement + "\n";
errorMsg += "Xml Attribute: " + errorArgs.xmlAttribute + "\n";
errorMsg += "Line: " + errorArgs.lineNumber + "\n";
errorMsg += "Position: " + errorArgs.charPosition + "\n";
break;
default:
break;
}
alert(errorMsg);
}
|
I. 页面代码(Default.aspx)
<
html
xmlns="http://www.w3.org/1999/xhtml" >
<
head
runat="server">
<title>
把xaml段内置在aspx或html页面中</title>
<script type="text/javascript" src="..\Silverlight.js"></script>
<script type="text/javascript" src="Default.aspx.js"></script>
</
head
>
<
body
onload="document.getElementById('SilverlightControlHost').focus()">
<!--
保证这段代码在createSilverlight方法上面 -->
<script type="text/xaml" id="xamlContent">
<?xml version="1.0"?>
<Canvas
xmlns="http://schemas.microsoft.com/client/2007"
Background="Wheat">
<TextBlock
Canvas.Left="20"
FontSize="24"
Loaded="setDate" />
</Canvas>
</script>
<form id="form1" runat="server">
<div id="SilverlightControlHost" >
<script type="text/javascript">
createSilverlight();
</script>
</div>
</form>
</
body
>
</
html
>
II.Xaml文件代码
文件省略, 其内容集成到 Default.aspx页面中了.
III.页面对应的JS文件代码(Default.aspx.js)
function
createSilverlight()
{
Silverlight.createObjectEx({
source: '#xamlContent',
parentElement: document.getElementById("SilverlightControlHost"),
id: "SilverlightControl",
properties: {
width: "350",
height: "350",
version: "1.0",
background: "white",
isWindowless: "true",
enableHtmlAccess: "true"
},
events: {}
});
}
function
setDate(sender, eventArgs)
{
sender.text = Date();
}
|
I. 页面代码(Default.aspx)
<
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="Default.aspx.js"></script>
</
head
>
<
body
onload="document.getElementById('SilverlightControlHost').focus()">
<form id="form1" runat="server">
<div id="SilverlightControlHost" >
<script type="text/javascript">
createSilverlight();
</script>
</div>
</form>
</
body
>
</
html
>
II.Xaml文件代码
<
Canvas
Name
=
"parentCanvas"
xmlns
=
"http://schemas.microsoft.com/client/2007"
xmlns:x
=
"http://schemas.microsoft.com/winfx/2006/xaml"
Loaded
=
"onLoaded"
>
<!--
预览一些图形
-->
<!--
画一条线段, 从 (10,10) 到 (50,50).
-->
<
Line
X1
=
"10"Y1="10"
X2
=
"50"Y2="50"
Stroke
=
"Black"
StrokeThickness
=
"4" />
<!--
画一条线段, 从 (10,10) 到 (50,50). 并且横坐标往右移动100个象素
-->
<
Line
X1
=
"10"Y1="10"
X2
=
"50"Y2="50"
StrokeThickness
=
"4"
Canvas.Left
=
"100">
<
Line.Stroke
>
<
RadialGradientBrush
GradientOrigin
=
"0.5,0.5"Center="0.5,0.5"RadiusX="0.5"RadiusY="0.5">
<
RadialGradientBrush.GradientStops
>
<
GradientStop
Color
=
"Red"Offset="0" />
<
GradientStop
Color
=
"Blue"Offset="0.25" />
</
RadialGradientBrush.GradientStops
>
</
RadialGradientBrush
>
</
Line.Stroke
>
</
Line
>
<!--
画一条水平线, 从坐标 (10,60) 到 (150,60).
-->
<
Line
X1
=
"10"Y1="60"
X2
=
"150"Y2="60"
Stroke
=
"Black"
StrokeThickness
=
"4"/>
<!--
画一个椭圆.
-->
<
Ellipse
Fill
=
"Yellow"
Height
=
"100"
Width
=
"200"
StrokeThickness
=
"2"
Stroke
=
"Black"Canvas.Top="100"/>
<!--
一条路径
-->
<
Path
Stroke
=
"DarkGoldenRod"StrokeThickness="3"
Data
=
"M 100,200 C 100,25 400,350 400,175 H 280"Canvas.Top="150" />
<!--
多边形.
-->
<
Polyline
Points
=
"25,25 0,50 25,75 50,50 25,25 25,0"
Stroke
=
"Blue"StrokeThickness="10"
Canvas.Left
=
"75"Canvas.Top="250">
<
Polyline.RenderTransform
>
<
RotateTransform
CenterX
=
"0"CenterY="0"Angle="45" />
</
Polyline.RenderTransform
>
</
Polyline
>
</
Canvas
>
III.页面对应的JS文件代码(Default.aspx.js)
function
createSilverlight()
{
Silverlight.createObjectEx({
source: "Page.xaml",
parentElement: document.getElementById("SilverlightControlHost"),
id: "SilverlightControl",
properties: {
width: "350",
height: "350",
version: "1.0",
background: "white",
isWindowless: "true",
enableHtmlAccess: "true"
},
events: {}
});
}
function
onLoaded(sender, eventArgs)
{
}
|
I. 页面代码(Default.aspx)
<
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="Default.aspx.js"></script>
</
head
>
<
body
onload="document.getElementById('SilverlightControlHost').focus()">
<form id="form1" runat="server">
<div id="SilverlightControlHost" >
<script type="text/javascript">
createSilverlight();
</script>
</div>
</form>
</
body
>
</
html
>
II.Xaml文件代码
<
Canvas
Name
=
"parentCanvas"
xmlns
=
"http://schemas.microsoft.com/client/2007"
xmlns:x
=
"http://schemas.microsoft.com/winfx/2006/xaml"
Loaded
=
"onLoaded"
>
<
Rectangle
Width
=
"100"Height="100"Fill="Red" />
<
Rectangle
Width
=
"100"Height="100"Fill="#FFFF0000"Canvas.Top="110" />
<
Rectangle
Width
=
"100"Height="100"Canvas.Top="220" >
<
Rectangle.Fill
>
<
SolidColorBrush
Color
=
"Red" />
</
Rectangle.Fill
>
</
Rectangle
>
<
Rectangle
Width
=
"100"Height="100"Canvas.Top="330">
<
Rectangle.Fill
>
<
SolidColorBrush
Color
=
"#FFFF0000" />
</
Rectangle.Fill
>
</
Rectangle
>
<
Rectangle
Width
=
"200"Height="100"Canvas.Top="440">
<
Rectangle.Fill
>
<
LinearGradientBrush
StartPoint
=
"0,0"EndPoint="1,1">
<
GradientStop
Color
=
"Yellow"Offset="0.0" />
<
GradientStop
Color
=
"Red"Offset="0.25" />
<
GradientStop
Color
=
"Blue"Offset="0.75" />
<
GradientStop
Color
=
"LimeGreen"Offset="1.0" />
</
LinearGradientBrush
>
</
Rectangle.Fill
>
</
Rectangle
>
<
Rectangle
Width
=
"200"Height="100"Canvas.Top="550">
<
Rectangle.Fill
>
<
LinearGradientBrush
StartPoint
=
"0,0.5"EndPoint="1,0.5">
<
GradientStop
Color
=
"Yellow"Offset="0.0" />
<
GradientStop
Color
=
"Red"Offset="0.25" />
<
GradientStop
Color
=
"Blue"Offset="0.75" />
<
GradientStop
Color
=
"LimeGreen"Offset="1.0" />
</
LinearGradientBrush
>
</
Rectangle.Fill
>
</
Rectangle
>
<
Rectangle
Width
=
"200"Height="100"Canvas.Top="660">
<
Rectangle.Fill
>
<
LinearGradientBrush
StartPoint
=
"0.5,0"EndPoint="0.5,1">
<
GradientStop
Color
=
"Yellow"Offset="0.0" />
<
GradientStop
Color
=
"Red"Offset="0.25" />
<
GradientStop
Color
=
"Blue"Offset="0.75" />
<
GradientStop
Color
=
"LimeGreen"Offset="1.0" />
</
LinearGradientBrush
>
</
Rectangle.Fill
>
</
Rectangle
>
<
Rectangle
Width
=
"200"Height="100"Canvas.Top="770">
<
Rectangle.Fill
>
<
RadialGradientBrush
GradientOrigin
=
"0.5,0.5"Center="0.5,0.5"
RadiusX
=
"0.5"RadiusY="0.5">
<
GradientStop
Color
=
"Yellow"Offset="0" />
<
GradientStop
Color
=
"Red"Offset="0.25" />
<
GradientStop
Color
=
"Blue"Offset="0.75" />
<
GradientStop
Color
=
"LimeGreen"Offset="1" />
</
RadialGradientBrush
>
</
Rectangle.Fill
>
</
Rectangle
>
<
Rectangle
Width
=
"100"Height="100"Canvas.Top="880">
<
Rectangle.Fill
>
<
LinearGradientBrush
StartPoint
=
"0,0">
<
GradientStop
Color
=
"#200000FF"Offset="0.0" />
<
GradientStop
Color
=
"#FF0000FF"Offset="1.0" />
</
LinearGradientBrush
>
</
Rectangle.Fill
>
</
Rectangle
>
</
Canvas
>
III.页面对应的JS文件代码(Default.aspx.js)
function
createSilverlight()
{
Silverlight.createObjectEx({
source: "Page.xaml",
parentElement: document.getElementById("SilverlightControlHost"),
id: "SilverlightControl",
properties: {
width: "350",
height: "10000",
version: "1.0",
background: "white",
isWindowless: "true",
enableHtmlAccess: "true"
},
events: {}
});
}
function
onLoaded(sender, eventArgs)
{
}
|
I. 页面代码(Default.aspx)
<
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="Default.aspx.js"></script>
</
head
>
<
body
onload="document.getElementById('SilverlightControlHost').focus()">
<form id="form1" runat="server">
<div id="SilverlightControlHost" >
<script type="text/javascript">
createSilverlight();
</script>
</div>
</form>
</
body
>
</
html
>
II.Xaml文件代码
<
Canvas
xmlns
=
"http://schemas.microsoft.com/client/2007"
xmlns:x
=
"http://schemas.microsoft.com/winfx/2006/xaml">
<
MediaElement
Name
=
"mediaElement"
Source
=
"http://jd.ikmtv.com/beyond_ghsy.wmv"IsMuted="True"
Opacity
=
"0.0" />
<
TextBlock
Canvas.Left
=
"5"Canvas.Top="30"
FontFamily
=
"Verdana"FontSize="120"
FontWeight
=
"Bold"TextWrapping="Wrap"
Text
=
"Video">
<
TextBlock.Foreground
>
<
VideoBrush
SourceName
=
"mediaElement"Stretch="UniformToFill" />
</
TextBlock.Foreground
>
</
TextBlock
>
</
Canvas
>
III.页面对应的JS文件代码(Default.aspx.js)
function
createSilverlight()
{
Silverlight.createObjectEx({
source: "Page.xaml",
parentElement: document.getElementById("SilverlightControlHost"),
id: "SilverlightControl",
properties: {
width: "350",
height: "350",
version: "1.0",
background: "white",
isWindowless: "true",
enableHtmlAccess: "true"
},
events: {}
});
}
function
onLoaded(sender, eventArgs)
{
}
|
I. 页面代码(Default.aspx)
<
html
xmlns="http://www.w3.org/1999/xhtml" >
<
head
runat="server">
<title>Path
元素使用</title>
<script type="text/javascript" src="..\Silverlight.js"></script>
<script type="text/javascript" src="Default.aspx.js"></script>
</
head
>
<
body
onload="document.getElementById('SilverlightControlHost').focus()">
<form id="form1" runat="server">
<div id="SilverlightControlHost" >
<script type="text/javascript">
createSilverlight();
</script>
</div>
</form>
</
body
>
</
html
>
II.Xaml文件代码
<
Canvas
xmlns
=
"http://schemas.microsoft.com/client/2007"
xmlns:x
=
"http://schemas.microsoft.com/winfx/2006/xaml">
<
Path
Stroke
=
"Black"Fill="Gray"
Data
=
"M 10,100 C 10,300 300,-200 300,100" />
</
Canvas
>
III.页面对应的JS文件代码(Default.aspx.js)
function
createSilverlight()
{
Silverlight.createObjectEx({
source: "Page.xaml",
parentElement: document.getElementById("SilverlightControlHost"),
id: "SilverlightControl",
properties: {
width: "350",
height: "350",
version: "1.0",
background: "white",
isWindowless: "true",
enableHtmlAccess: "true"
},
events: {}
});
}
|
I. 页面代码(Default.aspx)
<
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="Default.aspx.js"></script>
</
head
>
<
body
onload="document.getElementById('SilverlightControlHost').focus()">
<form id="form1" runat="server">
<div id="SilverlightControlHost" >
<script type="text/javascript">
createSilverlight();
</script>
</div>
</form>
</
body
>
</
html
>
II.Xaml文件代码
<
Canvas
xmlns
=
"http://schemas.microsoft.com/client/2007"
xmlns:x
=
"http://schemas.microsoft.com/winfx/2006/xaml"
Width
=
"200"Height="200">
<
Rectangle
Canvas.Left
=
"100"Canvas.Top="100"
Width
=
"50"Height="50"
Fill
=
"RoyalBlue">
<
Rectangle.RenderTransform
>
<
RotateTransform
Angle
=
"45" />
</
Rectangle.RenderTransform
>
</
Rectangle
>
<
Rectangle
Canvas.Left
=
"100"Canvas.Top="200"
Width
=
"50"Height="50"
Fill
=
"RoyalBlue">
<
Rectangle.RenderTransform
>
<
RotateTransform
Angle
=
"45"CenterX="25"CenterY="25" />
</
Rectangle.RenderTransform
>
</
Rectangle
>
<
Rectangle
Canvas.Left
=
"100"Canvas.Top="300"
Width
=
"50"Height="50"
Fill
=
"RoyalBlue">
<
Rectangle.RenderTransform
>
<
RotateTransform
Name
=
"myTransform"Angle="45"CenterX="25"CenterY="25" />
</
Rectangle.RenderTransform
>
<
Rectangle.Triggers
>
<
EventTrigger
RoutedEvent
=
"Rectangle.Loaded">
<
BeginStoryboard
>
<
Storyboard
>
<
DoubleAnimation
Storyboard.TargetName
=
"myTransform"
Storyboard.TargetProperty
=
"Angle"
From
=
"0"To="360"Duration="0:0:5"RepeatBehavior="Forever" />
</
Storyboard
>
</
BeginStoryboard
>
</
EventTrigger
>
</
Rectangle.Triggers
>
</
Rectangle
>
</
Canvas
>
III.页面对应的JS文件代码(Default.aspx.js)
function
createSilverlight()
{
Silverlight.createObjectEx({
source: "Page.xaml",
parentElement: document.getElementById("SilverlightControlHost"),
id: "SilverlightControl",
properties: {
width: "350",
height: "500",
version: "1.0",
background: "white",
isWindowless: "true",
enableHtmlAccess: "true"
},
events: {}
});
}
|
I. 页面代码(Default.aspx)
<
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="Default.aspx.js"></script>
</
head
>
<
body
onload="document.getElementById('SilverlightControlHost').focus()">
<form id="form1" runat="server">
<div id="SilverlightControlHost" >
<script type="text/javascript">
createSilverlight();
</script>
</div>
</form>
</
body
>
</
html
>
II.Xaml文件代码
<
Canvas
xmlns
=
"http://schemas.microsoft.com/client/2007"
xmlns:x
=
"http://schemas.microsoft.com/winfx/2006/xaml"
Width
=
"300"Name="mainControl"Height="300"Loaded="onLoaded">
<
MediaElement
Name
=
"media"Source="http://jd.ikmtv.com/aymtv/beyond_
喜欢你.wmv
"Width="300"Height="300"
MouseLeftButtonUp
=
"onMouseLeftButtonUp"AutoPlay="True"Visibility="Visible" />
<!--
停止
-->
<
Canvas
MouseLeftButtonDown
=
"media_stop"
Canvas.Left
=
"0"Canvas.Top="310">
<
Rectangle
Stroke
=
"Black"
Height
=
"30"Width="55"RadiusX="5"RadiusY="5">
<
Rectangle.Fill
>
<
RadialGradientBrush
GradientOrigin
=
"0.75,0.25">
<
GradientStop
Color
=
"LimeGreen"Offset="0.0" />
<
GradientStop
Color
=
"Green"Offset="1.0" />
</
RadialGradientBrush
>
</
Rectangle.Fill
>
</
Rectangle
>
<
TextBlock
Canvas.Left
=
"5"Canvas.Top="5">Stop</TextBlock>
</
Canvas
>
<!--
暂停
-->
<
Canvas
MouseLeftButtonDown
=
"media_pause"
Canvas.Left
=
"60"Canvas.Top="310">
<
Rectangle
Stroke
=
"Black"
Height
=
"30"Width="55"RadiusX="5"RadiusY="5">
<
Rectangle.Fill
>
<
RadialGradientBrush
GradientOrigin
=
"0.75,0.25">
<
GradientStop
Color
=
"LimeGreen"Offset="0.0" />
<
GradientStop
Color
=
"Green"Offset="1.0" />
</
RadialGradientBrush
>
</
Rectangle.Fill
>
</
Rectangle
>
<
TextBlock
Canvas.Left
=
"5"Canvas.Top="5">Pause</TextBlock>
</
Canvas
>
<!--
播放
-->
<
Canvas
MouseLeftButtonDown
=
"media_begin"
Canvas.Left
=
"120"Canvas.Top="310">
<
Rectangle
Stroke
=
"Black"RadiusX="5"RadiusY="5"
Height
=
"30"Width="55">
<
Rectangle.Fill
>
<
RadialGradientBrush
GradientOrigin
=
"0.75,0.25">
<
GradientStop
Color
=
"LimeGreen"Offset="0.0" />
<
GradientStop
Color
=
"Green"Offset="1.0" />
</
RadialGradientBrush
>
</
Rectangle.Fill
>
</
Rectangle
>
<
TextBlock
Canvas.Left
=
"5"Canvas.Top="5">Play</TextBlock>
</
Canvas
>
<!--
加音
-->
<
Canvas
MouseLeftButtonDown
=
"media_addvolumn"
Canvas.Left
=
"180"Canvas.Top="310">
<
Rectangle
Stroke
=
"Black"RadiusX="5"RadiusY="5"
Height
=
"30"Width="55">
<
Rectangle.Fill
>
<
RadialGradientBrush
GradientOrigin
=
"0.75,0.25">
<
GradientStop
Color
=
"LimeGreen"Offset="0.0" />
<
GradientStop
Color
=
"Green"Offset="1.0" />
</
RadialGradientBrush
>
</
Rectangle.Fill
>
</
Rectangle
>
<
TextBlock
Canvas.Left
=
"5"Canvas.Top="5">+V</TextBlock>
</
Canvas
>
<!--
哑音
-->
<
Canvas
MouseLeftButtonDown
=
"media_mutevolumn"
Canvas.Left
=
"240"Canvas.Top="310">
<
Rectangle
Stroke
=
"Black"RadiusX="5"RadiusY="5"
Height
=
"30"Width="55">
<
Rectangle.Fill
>
<
RadialGradientBrush
GradientOrigin
=
"0.75,0.25">
<
GradientStop
Color
=
"LimeGreen"Offset="0.0" />
<
GradientStop
Color
=
"Green"Offset="1.0" />
</
RadialGradientBrush
>
</
Rectangle.Fill
>
</
Rectangle
>
<
TextBlock
Canvas.Left
=
"5"Canvas.Top="5"> No V</TextBlock>
</
Canvas
>
<!--
减音
-->
<
Canvas
MouseLeftButtonDown
=
"media_subvolumn"
Canvas.Left
=
"300"Canvas.Top="310">
<
Rectangle
Stroke
=
"Black"RadiusX="5"RadiusY="5"
Height
=
"30"Width="50">
<
Rectangle.Fill
>
<
RadialGradientBrush
GradientOrigin
=
"0.75,0.25">
<
GradientStop
Color
=
"LimeGreen"Offset="0.0" />
<
GradientStop
Color
=
"Green"Offset="1.0" />
</
RadialGradientBrush
>
</
Rectangle.Fill
>
</
Rectangle
>
<
TextBlock
Canvas.Left
=
"5"Canvas.Top="5"> -V</TextBlock>
</
Canvas
>
</
Canvas
>
III.页面对应的JS文件代码(Default.aspx.js)
function
createSilverlight()
{
Silverlight.createObjectEx({
source: "Page.xaml",
parentElement: document.getElementById("SilverlightControlHost"),
id: "SilverlightControl",
properties: {
width: "350",
height: "350",
version: "1.0",
background: "white",
isWindowless: "true",
enableHtmlAccess: "true"
},
events: {}
});
}
function
media_stop(sender, args) {
sender.findName("media").stop();
}
function
media_pause(sender, args) {
sender.findName("media").pause();
}
function
media_begin(sender, args) {
sender.findName("media").play();
}
function
media_addvolumn(sender, args) {
sender.findName("media").Volume += 0.1;
}
function
media_subvolumn(sender, args) {
sender.findName("media").Volume -= 0.1;
}
function
media_mutevolumn(sender, args) {
sender.findName("media").IsMuted = !sender.findName("media").IsMuted;
}
//
双击事件
function
onMouseLeftButtonUp(sender, mouseEventArgs)
{
//plugin.content.fullScreen = !plugin.content.fullScreen;
var b=(new Date).getTime(),c=this._timeLastLeftButtonUp;
this._timeLastLeftButtonUp=b;
var a=c&&b-c<300;
if(a)
{
//
处理双击事件
this._timeLastLeftButtonUp=0;
var plugin=sender.getHost();
plugin.content.fullScreen = !plugin.content.fullScreen;
}
else
{
//
处理单击事件
}
}
var
media;
function
onLoaded(sender, mouseEventArgs)
{
media = sender.findName("media");
//
处理FullScreenChangeded事件
plugin = sender.getHost();
plugin.content.onFullScreenChange = onFullScreenChanged;
updateLayout(plugin.content.actualWidth, plugin.content.actualHeight);
}
function
onFullScreenChanged(sender, eventArgs)
{
updateLayout(plugin.content.actualWidth, plugin.content.actualHeight);
}
function
updateLayout(width, height)
{
media.width=width;
media.height=height;
}
|
I.页面代码(Default.aspx)
<
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="Default.aspx.js"></script>
</
head
>
<
body
onload="document.getElementById('SilverlightControlHost').focus()">
<form id="form1" runat="server">
<div id="SilverlightControlHost" >
<script type="text/javascript">
createSilverlight();
</script>
</div>
</form>
</
body
>
</
html
>
II.Xaml文件代码
<
Canvas
xmlns
=
"http://schemas.microsoft.com/client/2007"
xmlns:x
=
"http://schemas.microsoft.com/winfx/2006/xaml">
<
Rectangle
Name
=
"MyAnimatedRectangle"
Width
=
"100"
Height
=
"100"
Fill
=
"Blue">
<
Rectangle.Triggers
>
<
EventTrigger
RoutedEvent
=
"Rectangle.Loaded">
<
BeginStoryboard
>
<
Storyboard
>
<
DoubleAnimation
Storyboard.TargetName
=
"MyAnimatedRectangle"
Storyboard.TargetProperty
=
"Opacity"
From
=
"1.0"To="0.0"Duration="0:0:5"AutoReverse="True"RepeatBehavior="Forever" />
</
Storyboard
>
</
BeginStoryboard
>
</
EventTrigger
>
</
Rectangle.Triggers
>
</
Rectangle
>
</
Canvas
>
III.页面对应的JS文件代码(Default.aspx.js)
function
createSilverlight()
{
Silverlight.createObjectEx({
source: "Page.xaml",
parentElement: document.getElementById("SilverlightControlHost"),
id: "SilverlightControl",
properties: {
width: "350",
height: "350",
version: "1.0",
background: "white",
isWindowless: "true",
enableHtmlAccess: "true"
},
events: {}
});
}
|
I. 页面代码(Default.aspx)
<
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="Default.aspx.js"></script>
</
head
>
<
body
onload="document.getElementById('SilverlightControlHost').focus()">
<form id="form1" runat="server">
<div id="SilverlightControlHost" >
<script type="text/javascript">
createSilverlight();
</script>
</div>
</form>
</
body
>
</
html
>
II.Xaml文件代码
<
Canvas
xmlns
=
"http://schemas.microsoft.com/client/2007"
xmlns:x
=
"http://schemas.microsoft.com/winfx/2006/xaml">
<
Canvas.Resources
>
<
Storyboard
Name
=
"myStoryboard">
<
DoubleAnimation
Storyboard.TargetName
=
"MyAnimatedRectangle"
Storyboard.TargetProperty
=
"Opacity"
From
=
"1.0"To="0.0"Duration="0:0:5"
AutoReverse
=
"True" />
</
Storyboard
>
</
Canvas.Resources
>
<
Rectangle
Name
=
"MyAnimatedRectangle"
Width
=
"100"
Height
=
"100"
Fill
=
"Blue"
MouseLeftButtonDown
=
"startAnimation">
</
Rectangle
>
</
Canvas
>
III.页面对应的JS文件代码(Default.aspx.js)
function
createSilverlight()
{
Silverlight.createObjectEx({
source: "Page.xaml",
parentElement: document.getElementById("SilverlightControlHost"),
id: "SilverlightControl",
properties: {
width: "350",
height: "350",
version: "1.0",
background: "white",
isWindowless: "true",
enableHtmlAccess: "true"
},
events: {}
});
}
function
startAnimation(sender, mouseEventArgs)
{
//
开始运行
sender.findName("myStoryboard").begin();
}
|
I. 页面代码(Default.aspx)
<
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="Default.aspx.js"></script>
</
head
>
<
body
onload="document.getElementById('SilverlightControlHost').focus()">
<form id="form1" runat="server">
<div id="SilverlightControlHost" >
<script type="text/javascript">
createSilverlight();
</script>
</div>
</form>
</
body
>
</
html
>
II.Xaml文件代码
<
Canvas
xmlns
=
"http://schemas.microsoft.com/client/2007"
xmlns:x
=
"http://schemas.microsoft.com/winfx/2006/xaml"
Width
=
"400"Height="300">
<
Rectangle
Fill
=
"Blue"
Width
=
"50"Height="50">
<
Rectangle.RenderTransform
>
<
TranslateTransform
Name
=
"MyAnimatedTranslateTransform1"
X
=
"0"Y="0" />
</
Rectangle.RenderTransform
>
<
Rectangle.Triggers
>
<
EventTrigger
RoutedEvent
=
"Rectangle.Loaded">
<
BeginStoryboard
>
<
Storyboard
>
<
DoubleAnimationUsingKeyFrames
Storyboard.TargetName
=
"MyAnimatedTranslateTransform1"
Storyboard.TargetProperty
=
"X"
Duration
=
"0:0:10">
<
LinearDoubleKeyFrame
Value
=
"0"KeyTime="0:0:0" />
<
LinearDoubleKeyFrame
Value
=
"350"KeyTime="0:0:2" />
<
LinearDoubleKeyFrame
Value
=
"50"KeyTime="0:0:7" />
<
LinearDoubleKeyFrame
Value
=
"200"KeyTime="0:0:8" />
</
DoubleAnimationUsingKeyFrames
>
</
Storyboard
>
</
BeginStoryboard
>
</
EventTrigger
>
</
Rectangle.Triggers
>
</
Rectangle
>
<
Rectangle
Fill
=
"Blue"
Width
=
"50"Height="50">
<
Rectangle.RenderTransform
>
<
TranslateTransform
Name
=
"SplineAnimatedTranslateTransform2"
X
=
"0"Y="0" />
</
Rectangle.RenderTransform
>
<
Rectangle.Triggers
>
<
EventTrigger
RoutedEvent
=
"Rectangle.Loaded">
<
BeginStoryboard
>
<
Storyboard
>
<
DoubleAnimationUsingKeyFrames
Storyboard.TargetName
=
"SplineAnimatedTranslateTransform2"
Storyboard.TargetProperty
=
"X"
Duration
=
"0:0:15"
RepeatBehavior
=
"Forever">
<
SplineDoubleKeyFrame
Value
=
"500"
KeyTime
=
"0:0:7"KeySpline="0.0,1.0 1.0,0.0" />
<
SplineDoubleKeyFrame
Value
=
"200"
KeyTime
=
"0:0:10"KeySpline="0.0,0.0 1.0,0.0" />
<
SplineDoubleKeyFrame
Value
=
"350"
KeyTime
=
"0:0:15"KeySpline="0.25,0.5 0.75,1" />
</
DoubleAnimationUsingKeyFrames
>
</
Storyboard
>
</
BeginStoryboard
>
</
EventTrigger
>
</
Rectangle.Triggers
>
</
Rectangle
>
<
Rectangle
Fill
=
"Blue"
Width
=
"50"Height="50">
<
Rectangle.RenderTransform
>
<
TranslateTransform
Name
=
"ComboAnimatedTranslateTransform3"
X
=
"0"Y="0" />
</
Rectangle.RenderTransform
>
<
Rectangle.Triggers
>
<
EventTrigger
RoutedEvent
=
"Rectangle.Loaded">
<
BeginStoryboard
>
<
Storyboard
>
<
DoubleAnimationUsingKeyFrames
Storyboard.TargetName
=
"ComboAnimatedTranslateTransform3"
Storyboard.TargetProperty
=
"X"
Duration
=
"0:0:15"
RepeatBehavior
=
"Forever">
<
DiscreteDoubleKeyFrame
Value
=
"500"KeyTime="0:0:7" />
<
LinearDoubleKeyFrame
Value
=
"200"KeyTime="0:0:10" />
<
SplineDoubleKeyFrame
Value
=
"350"KeyTime="0:0:15"
KeySpline
=
"0.25,0.5 0.75,1" />
</
DoubleAnimationUsingKeyFrames
>
</
Storyboard
>
</
BeginStoryboard
>
</
EventTrigger
>
</
Rectangle.Triggers
>
</
Rectangle
>
<
Rectangle
Fill
=
"Blue"
Width
=
"50"Height="50">
<
Rectangle.RenderTransform
>
<
TranslateTransform
Name
=
"MyAnimatedTranslateTransform4"
X
=
"0"Y="0" />
</
Rectangle.RenderTransform
>
<
Rectangle.Triggers
>
<
EventTrigger
RoutedEvent
=
"Rectangle.Loaded">
<
BeginStoryboard
>
<
Storyboard
>
<
DoubleAnimationUsingKeyFrames
Storyboard.TargetName
=
"MyAnimatedTranslateTransform4"
Storyboard.TargetProperty
=
"X"
Duration
=
"0:0:10">
<
LinearDoubleKeyFrame
Value
=
"100"KeyTime="0:0:3" />
<
LinearDoubleKeyFrame
Value
=
"200"KeyTime="0:0:8" />
<
LinearDoubleKeyFrame
Value
=
"500"KeyTime="0:0:9" />
<
LinearDoubleKeyFrame
Value
=
"600"KeyTime="0:0:10" />
</
DoubleAnimationUsingKeyFrames
>
</
Storyboard
>
</
BeginStoryboard
>
</
EventTrigger
>
</
Rectangle.Triggers
>
</
Rectangle
>
</
Canvas
>
III.页面对应的JS文件代码(Default.aspx.js)
function
createSilverlight()
{
Silverlight.createObjectEx({
source: "Page.xaml",
parentElement: document.getElementById("SilverlightControlHost"),
id: "SilverlightControl",
properties: {
width: "1000",
height: "1000",
version: "1.0",
background: "white",
isWindowless: "true",
enableHtmlAccess: "true"
},
events: {}
});
}
|
(三). 本入门教程示例代码下载
http://files.cnblogs.com/MVP33650/Silverlight(ByChengKing).rar