RoutedEvents: Drag And Drop : RoutedCommand « Windows Presentation Foundation « VB.Net






RoutedEvents: Drag And Drop

RoutedEvents: Drag And Drop
    
<Window x:Class="RoutedEvents.DragAndDrop"
    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
    Title="DragAndDrop" Height="300" Width="400">
  <StackPanel>
    <TextBox Padding="10" VerticalAlignment="Center" HorizontalAlignment="Center">Drag from this TextBox</TextBox>
    <Label Padding="20" Background="LightGoldenrodYellow" VerticalAlignment="Center"  HorizontalAlignment="Center"
           MouseDown="lblSource_MouseDown">Or this Label</Label>
    <Label Background="LightGoldenrodYellow"
           VerticalAlignment="Center" HorizontalAlignment="Center" Padding="20"
      AllowDrop="True" Drop="lblTarget_Drop">To this Label</Label>
  </StackPanel>
</Window>

//File:Window.xaml.vb


Imports System
Imports System.Collections.Generic
Imports System.Text
Imports System.Windows
Imports System.Windows.Controls
Imports System.Windows.Data
Imports System.Windows.Documents
Imports System.Windows.Input
Imports System.Windows.Media
Imports System.Windows.Media.Imaging
Imports System.Windows.Shapes

Namespace RoutedEvents
  Public Partial Class DragAndDrop
    Inherits System.Windows.Window
    Public Sub New()
      InitializeComponent()
    End Sub

    Private Sub lblSource_MouseDown(sender As Object, e As MouseButtonEventArgs)
      Dim lbl As Label = DirectCast(sender, Label)
      DragDrop.DoDragDrop(lbl, lbl.Content, DragDropEffects.Copy)
    End Sub

    Private Sub lblTarget_Drop(sender As Object, e As DragEventArgs)
      DirectCast(sender, Label).Content = e.Data.GetData(DataFormats.Text)
    End Sub

    Private Sub lblTarget_DragEnter(sender As Object, e As DragEventArgs)
      If e.Data.GetDataPresent(DataFormats.Text) Then
        e.Effects = DragDropEffects.Copy
      Else
        e.Effects = DragDropEffects.None
      End If
    End Sub
  End Class
End Namespace

   
    
    
    
  








Related examples in the same category

1.Create a custom RoutedCommand, the CommandBinding objects, and the KeyBinding objects in code.Create a custom RoutedCommand, the CommandBinding objects, and the KeyBinding objects in code.
2.Convert RoutedEventArgs.OriginalSource to event senderConvert RoutedEventArgs.OriginalSource to event sender
3.RoutedEvents: Button Mouse Up EventRoutedEvents: Button Mouse Up Event
4.RoutedEvents: Focus eventRoutedEvents: Focus event
5.RoutedEvents: Key ModifiersRoutedEvents: Key Modifiers
6.RoutedEvents: Key Press EventsRoutedEvents: Key Press Events
7.RoutedEvents: Mouse PositionRoutedEvents: Mouse Position
8.Bubble routed events, and write an event handler for a routed event.Bubble routed events, and write an event handler for a routed event.
9.Get RoutedEvent NameGet RoutedEvent Name
10.Create RoutedCommand from InputGestureCollection
11.RoutedEvents Only NumbersRoutedEvents Only Numbers
12.Routed Event DemoRouted Event Demo