Silverlight 5 系列学习之二
昨天学习了一下Silverlight基础感觉也没有什么特别之处,不过圈里朋友劝我不要深入学习了,因为ms已不再爱他的这个孩子了,好吧那就把上些简单的东西稍微过一下吧,要不然公司有什么需求要改的小弟不会。单击事件,鼠标事件基本和Winform里的差不多,都是声明,注册。下面是个简单的图片浏览器如下代码:
前台:
<UserControl xmlns:my="clr-namespace:SilverlightApplication1" x:Class="SilverlightApplication1.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="400" d:DesignWidth="800">
<Grid>
<Canvas Background="#000000">
<Canvas.Resources>
<Storyboard x:Name="myStoryboard">
<DoubleAnimation
Storyboard.TargetName="myTransform"
Storyboard.TargetProperty="AngleY"
From="0" To="180" Duration="0:0:5" RepeatBehavior="1x"/>
<DoubleAnimation
Storyboard.TargetName="leftScaleTransform"
Storyboard.TargetProperty="ScaleX"
From="0" To="1" Duration="0:0:5" RepeatBehavior="1x"/>
<DoubleAnimation
Storyboard.TargetName="leftScaleTransform"
Storyboard.TargetProperty="ScaleY"
From="0" To="1" Duration="0:0:5" RepeatBehavior="1x"/>
<DoubleAnimation
Storyboard.TargetName="rightScaleTransform"
Storyboard.TargetProperty="ScaleX"
From="0" To="1" Duration="0:0:5" RepeatBehavior="1x"/>
<DoubleAnimation
Storyboard.TargetName="rightScaleTransform"
Storyboard.TargetProperty="ScaleY"
From="0" To="1" Duration="0:0:5" RepeatBehavior="1x"/>
</Storyboard>
</Canvas.Resources>
<Image Source="border.png" Canvas.Top="150" Canvas.Left="220"
Width="356" Height="226"></Image>
<Image x:Name="currentImg" Source="5.png" Width="340" Height="175"
Canvas.Top="154" Canvas.Left="228">
<Image.RenderTransform>
<TransformGroup>
<SkewTransform x:Name="myTransform" AngleX="0" AngleY="0"
CenterX="170" CenterY="87.5"></SkewTransform>
</TransformGroup>
</Image.RenderTransform>
</Image>
<Image Source="border.png" Canvas.Top="180" Canvas.Left="20"
Width="178" Height="113"></Image>
<Image x:Name="leftImg" Source="4.png" Canvas.Top="182" Canvas.Left="24"
Width="170" Height="87.5" Opacity="0.6"
MouseEnter="OnMouseEnter" MouseLeave="OnMouseLeave"
MouseLeftButtonDown="leftImg_MouseLeftButtonDown">
<Image.RenderTransform>
<ScaleTransform x:Name="leftScaleTransform" ScaleX="1" ScaleY="1"
CenterX="85" CenterY="34"></ScaleTransform>
</Image.RenderTransform>
</Image>
<Image Source="border.png" Canvas.Top="180" Canvas.Left="600"
Width="178" Height="113"></Image>
<Image x:Name="rightImg" Source="6.png" Canvas.Top="182" Canvas.Left="604"
Width="170" Height="87.5" Opacity="0.6"
MouseEnter="OnMouseEnter" MouseLeave="OnMouseLeave"
MouseLeftButtonDown="rightImg_MouseLeftButtonDown">
<Image.RenderTransform>
<ScaleTransform x:Name="rightScaleTransform" ScaleX="1" ScaleY="1"
CenterX="85" CenterY="34"></ScaleTransform>
</Image.RenderTransform>
</Image>
</Canvas>
</Grid>
</UserControl>
后台代码:
private void OnMouseEnter(object sender, MouseEventArgs e)
{
Image img = sender as Image;
img.Opacity = 1.0;
}
private void OnMouseLeave(object sender, MouseEventArgs e)
{
Image img = sender as Image;
img.Opacity = 0.6;
}
private int index = 5;
private int MIN = 1;
private int MAX = 8;
private void leftImg_MouseLeftButtonDown(object sender, MouseButtonEventArgs e)
{
index = index == MIN ? MAX : index - 1;
Play();
}
private void rightImg_MouseLeftButtonDown(object sender, MouseButtonEventArgs e)
{
index = index == MAX ? MIN : index + 1;
Play();
}
void Play()
{
int left = index == MIN ? MAX : index - 1;
int right = index == MAX ? MIN : index + 1;
}
出来的效果如下:
Silverlight 5 系列学习之二的更多相关文章
- Silverlight 5 系列学习之一
最近公司要用Silverlight 开发并且使用了5 ,以前只学过WPF 没看过Silverlight ,不过在争光中国看了看其概念原来如此.它只不过是轻量级的WPF,且目标在于跨浏览器及平台.费话少 ...
- Silverlight 2学习笔记二:三个基本布局控件(Canvas、StackPanel、Grid )
这篇文章主要是翻译了ScottGu博客的文章:Silverlight Tutorial Part 2: Using Layout Management.虽然是翻译,但通过笔记记录,我发现对这三个布局控 ...
- arcgis api for silverlight开发系列之二:缓存图层与动态图层及图层总结 .
本文摘自:http://blog.csdn.net/leesmn/article/details/6916458(很优秀的博客) 作为ESRI的平台的一份子arcgis api for silve ...
- 神经网络系列学习笔记(二)——神经网络之DNN学习笔记
一.单层感知机(perceptron) 拥有输入层.输出层和一个隐含层.输入的特征向量通过隐含层变换到达输出层,在输出层得到分类结果: 缺点:无法模拟稍复杂一些的函数(例如简单的异或计算). 解决办法 ...
- MVC系列学习(十二)-服务端的验证
在前一讲,提到过,客户端的东西永远可以造假,所以我们还要在服务端进行验证 注意:先加载表单,后添加js文件,才能有效:而先加载js,后添加表单,是没有效果的 1.视图与Model中的代码如下 2.一张 ...
- Java系列学习(十二)-开始Eclipse
1.用Eclipse来写一个HelloWorld (1)选择工作空间 工作空间其实就是我们写的源代码所在的目录 (2)创建一个Java项目 [File-New-Java Project] (3)创建包 ...
- 戏说 .NET GDI+系列学习教程(二、Graphics类的方法)
一.DrawBezier 画立体的贝尔塞曲线 private void frmGraphics_Paint(object sender, PaintEventArgs e) { Graphics g ...
- [转]WPF and Silverlight 学习笔记(二十五):使用CollectionView实现对绑定数据的排序、筛选、分组
在第二十三节,我们使用CollectionView实现了对于绑定数据的导航,除导航功能外,还可以通过CollectionView对数据进行类似于DataView的排序.筛选等功能. 一.数据的排序: ...
- Spring Boot系列学习文章(二) -- 配置多数据源
前言: 在上一章中,我们已经搭建好项目,现在来讲一下如何配置数据源. 由于在有的项目中,用的数据源可能会涉及多个,且是不同类型的,我们接下来就讲解多数据源的配置. 情景描述: 现有项目需要访问不同的数 ...
随机推荐
- IdentityServer4 + SignalR Core +RabbitMQ 构建web即时通讯(三)
IdentityServer4 + SignalR Core +RabbitMQ 构建web即时通讯(三) 后台服务用户与认证 新建一个空的.net core web项目Demo.Chat,端口配置为 ...
- LanguageImage尺寸
iPhone Portrait iOS 8-Retina HD 5.5 (1242×2208) @3xiPhone Portrait iOS 8-Retina HD 4.7 (750×1334) @2 ...
- C# C/S程序使用HTML文件作为打印模板
C# C/S程序使用HTML文件作为打印模板 在网上找了一堆的资料,整理到郁闷呀,慢慢试慢慢改.哎,最终成功了,哈,菜鸟伤不起呀 public partial class Print : Form ...
- window 安装 skywalking
1.下载安装包 官网下载需要的安装包: https://github.com/OpenSkywalking/skywalking/releases 分别下载skywalking-collector.z ...
- 升级webapi依赖的Newtonsoft.json的版本(转)
随着微软日渐重视开源社区的贡献,微软在自己的产品中往往也会集成开源的第三方库. 比如System.Net.Http.Foramatting.dll 就依赖于Newtonsoft.json v4.5. ...
- 马尔科夫链在第n步转移的状态的概率分布
- 远程服务器上的weblogic项目管理(二)发布完成后如何重启weblogic容器
前面说到了每次更新服务器项目的java文件与配置文件后,需要更新weblogic容器以完成更新加载,下面来说说如何更新weblogic容器: 第一种方法可以通过ssh shell client工具直接 ...
- 【题解】P1613跑路
[题解]P1613 鸽王跑路 一道思维好题! 考虑\(2^k\)的传递性.直接64遍\(floyd\)求所有\(2^k\)的路径,转移方程是 \(dp(i,j,k)=[dp[i][t][k-1]\)& ...
- 您使用的是不受支持的命令行标记 chrome
检查 chrome://flags/#extensions-on-chrome-urls 是否开启 开启了的话就关掉检查 启动chrome的快捷方式是否在目标后有额外的参数 有就删了 在浏览器中输入c ...
- WordPress用户角色及其权限管理编辑插件:User Role Editor汉化版
如果Wordpress默认的用户角色及权限不能满足您的需求,又觉得修改代码编辑用户权限太麻烦.那不妨试试User Role Editor,Wordpress用户角色及其权限管理编辑插件. User R ...