silverlight:学Silverlight 2系列(5):实现简单的拖放功能

  本文举例源代码或素材下载

  概述  Silverlight 2 Beta 1版本发布了无论从Runtime还是Tools都给我们带来了很多惊喜如支持框架语言Visual Basic, Visual C#, IronRuby, Ironpython对JSON、Web Service、WCF以及Sockets支持等系列新特性步学Silverlight 2系列文章带您快速进入Silverlight 2开发

  本文为系列文章第 5篇利用前面讲过鼠标事件处理实现简单拖放功能

  准备XAML  在实现拖放功能中分为 3个步骤:

  1.按下鼠标触发MouseLeftButtonDown事件选择要拖动对象

  2.移动鼠标触发MouseMove事件移动选择对象

  3.放开鼠标触发MouseLeftButtonUp事件停止捕捉事件

  做个简单界面个按钮来显示拖放如下XAML声明:

<Canvas Background="#46461F">
  <Button
    MouseLeftButtonDown="OnMouseDown"
    MouseMove="OnMouseMove"
    MouseLeftButtonUp="OnMouseUp"
    Canvas.Left="50" Canvas.Top="50" Background="Red"
    FontSize="18"
    Width="160" Height="80">
    <Button.Content>
      <StackPanel Orientation="Horizontal" HorizontalAlignment="Center"
            VerticalAlignment="Center">
        <Image Source="smile_6.png"></Image>
        <TextBlock Text="拖动我" VerticalAlignment="Center" Margin="10"></TextBlock>
      </StackPanel>
    </Button.Content>
  </Button>
</Canvas>
  这里为了界面显示效果使用了Control控件模板后续会专门讲到

  开始拖放操作  开始拖放操作实现MouseLeftButtonDown事件处理用两个全局变量来记录当前鼠标位置和鼠标是否保持移动

bool trackingMouseMove = false;
Po mousePosition;
void _disibledevent="学Silverlight 2系列(5):实现简单拖放功能" />

  结束语  本文实现了个简单拖放功能(举例来自于Silverlight 2 SDK)下载文本举例代码

Tags:  silverlight2 silverlight.2.0 silverlight是什么 silverlight

延伸阅读

最新评论

发表评论