Имеет ли значение, какой элемент управления вы вызываете метод DoDragDrop?

Мне интересно, имеет ли какое-то значение, какой элемент управления я вызываю метод DoDragDrop в приложении Windows Forms.

У меня есть форма с двумя элементами управления PictureBox. Один из них можно перетаскивать, а для другого свойство AllowsDrop имеет значение true.

Обработчик событий MouseDown для перетаскиваемого PictureBox выглядит следующим образом:

    private void dragPictureBox_MouseDown(object sender, MouseEventArgs e)
    {
        if (sender is PictureBox)
        {
            var pictureBox = (PictureBox) sender;
            var effect = pictureBox.DoDragDrop(
                pictureBox.Image, DragDropEffects.All);
            MessageBox.Show("Drag ended in a " + effect);
        }
    }

Но вместо вызова DoDragDrop на pictureBox, мне кажется, что я могу использовать любой элемент управления, например, сама форма

var effect = this.DoDragDrop(pictureBox.Image, DragDropEffects.All);

или даже

var effect = label1.DoDragDrop(pictureBox.Image, DragDropEffects.All);

Имеет ли значение, какой элемент управления я вызываю метод DoDragDrop? И если да, то в чем разница?

5
задан comecme 15 December 2010 в 10:36
поделиться