Я делаю шахматную доску и не хочу, чтобы пользователь перетаскивал шахматную фигуру (изображение) за пределы формы.
Текущий код:
private void PictureBox_MouseDown(object sender, MouseEventArgs e)
{
PictureBox pb = (PictureBox)sender;
pb.DoDragDrop(pb.Image, DragDropEffects.Copy);
}
private void PictureBox_DragEnter(object sender, DragEventArgs e)
{
PictureBox pb = (PictureBox)sender;
pb.Image = DragDropPreview(e);
}
private void PictureBox_DragDrop(object sender, DragEventArgs e)
{
PictureBox pb = (PictureBox)sender;
pb.Image = (Bitmap)e.Data.GetData(DataFormats.Bitmap);
}
private void PictureBox_DragLeave(object sender, EventArgs e)
{
PictureBox pb = (PictureBox)sender;
pb.Image = null;
}
Можно ли запретить пользователю перетаскивать изображение из формы?
private void frmChessBoard_DragLeave(object sender, EventArgs e)
{
// stop the Drag & Drop action
}
Или есть способ запретить удаление изображения за пределы формы? Я не знаю, есть ли события вне формы, которые могут быть вызваны.