Silverlight学习笔记(1)-3.0放大缩小
<Image Cursor="Hand" MouseEnter="imgLogo1_MouseEnter" Canvas.ZIndex="1" x:Name="imgLogo1" Canvas.Left="100" Canvas.Top="60" Source="Image/logo1.jpg">
<Image.RenderTransform>
<ScaleTransform x:Name="LogoScale" CenterX="90" CenterY="96"></ScaleTransform>
</Image.RenderTransform>
</Image>
</Canvas>
private System.Windows.Threading.DispatcherTimer timer;
private ScaleDirection scaleDirection ;
public Page()
{
InitializeComponent();
timer = new System.Windows.Threading.DispatcherTimer();
timer.Interval = TimeSpan.FromMilliseconds(50);
timer.Tick += new EventHandler(timer_Tick);
}
void timer_Tick(object sender, EventArgs e)
{
AdjustScale(scaleDirection, LogoScale);
}
void AdjustScale(ScaleDirection scaleDirection, ScaleTransform scale)
{
if (scaleDirection == ScaleDirection.Down)
{
if (scale.ScaleX < 1.3)
{
scale.ScaleX += 0.05; scale.ScaleY += 0.05;
}
else
timer.Stop();
}
else
{
if (scale.ScaleX > 1.0)
{
scale.ScaleX -= 0.05; scale.ScaleY -= 0.05;
}
else
timer.Stop();
}
}
enum ScaleDirection
{
Up, Down
}
private void imgLogo1_MouseEnter(object sender, MouseEventArgs e)
{
scaleDirection = ScaleDirection.Down;
timer.Start();
}
浙公网安备 33010602011771号