5
WindowsフォームアプリケーションでDoDragDropメソッドを呼び出すコントロールに違いがあるのだろうかと思います。どのコントロールでDoDragDropメソッドを呼び出すのが重要ですか?
私は2つのPictureBoxコントロールを持つフォームを持っています。 1つはドラッグでき、もう1つはAllowsDropプロパティがtrueに設定されています。
次のようにドラッグ可能なピクチャのためのMouseDownイベントハンドラは次のとおりです。
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関数を呼び出す代わりに、私はそうですvar effect = this.DoDragDrop(pictureBox.Image, DragDropEffects.All);
あるいは
var effect = label1.DoDragDrop(pictureBox.Image, DragDropEffects.All);
それはどんなdiffereを作るんどんなコントロールをDoDragDropメソッドと呼んでいますか?もしそうなら、違いは何ですか?
あなたは絶対に正しいです。 GiveFeedbackイベントでも同様です。面白いことに、ドキュメンテーションでは、キーボードやマウスボタンの状態が変更された場合にのみ発生すると記載されていますが、ドラッグ操作中に両方のイベントが発生し続けることがあります。 – comecme