老师最近让做个小研究,其中有一部分是实现图片的缩放功能,由于要在Web中实现,silverlight在图形图像处理方面有很强的支持功能,索性就研究了一下,弄了个小Demo,分享给大家。还有些疑问向高手请教,先看下效果:


设计界面很简单:
<UserControl x:Class="PicShowZoom.Page"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
Width="1000" Height="600">
<Grid x:Name="LayoutRoot" Background="White">
<Grid.RowDefinitions>
<RowDefinition Height="50"></RowDefinition>
<RowDefinition Height="*"></RowDefinition>
</Grid.RowDefinitions>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="*"/>
</Grid.ColumnDefinitions>
<Canvas x:Name="Show" Background="Black" Width="900" Height="500" Grid.Row="1" Grid.Column="0">
<ScrollViewer Height="430" Width="880" Canvas.Left="8" Canvas.Top="20" x:Name="img_Scroll" HorizontalScrollBarVisibility="Hidden" VerticalScrollBarVisibility="Hidden" TabNavigation="Local">
<Image Stretch="Uniform" MouseLeftButtonDown="img_c_MouseLeftButtonDown" MouseLeftButtonUp="img_c_MouseLeftButtonUp" RenderTransformOrigin="0.5,0.5" x:Name="img_c" Source="78_104606.jpg" Cursor="Hand" Loaded="img_c_Loaded">
<Image.RenderTransform>
<TransformGroup>
<ScaleTransform x:Name="img_scale" ScaleX="1" ScaleY="1"/>
<SkewTransform/>
<RotateTransform Angle="0"/>
<TranslateTransform X="0" x:Name="img_translate"/>
</TransformGroup>
</Image.RenderTransform>
</Image>
</ScrollViewer>
</Canvas>
<Slider x:Name="ChangeShow" Height="20" Width="500" Grid.Row="0" Grid.Column="0" ValueChanged="ChangeShow_ValueChanged" Maximum="1000" Minimum="0"></Slider>
</Grid>
</UserControl>
下一篇:没有比当前更新的主题
评论加载中...- 2009-5-11Silverlight开发实践--PicZoomShow
- 2009-5-8快速浏览Silverlight3 Beta: SystemColor(系统颜色)
- 2009-5-6快速浏览Silverlight3 Beta:在线与离线状态检测
- 2009-5-6基于flex4技术从零开发flex博客系统: 8 using jsp and jstl
- 2009-5-6基于flex4技术从零开发flex博客系统: 7 Using JPA
- 2009-5-6基于flex4技术从零开发flex博客系统: 6 Using FluorineFx
- 2009-5-6基于flex4技术从零开发flex博客系统 : 5 数据存储之管理Greeting
- 2009-5-6基于flex4技术从零开发flex博客系统 : 4 数据存储
- 2009-5-6FMS3系列(六):使用远程共享对象实现多人实时在线聊天
- 2009-5-6使用silverlight构建一个工作流设计器(七)
