Funcionalidade de arrastar e soltar no Windows Forms
O Windows Forms inclui um conjunto de métodos, eventos e classes que implementam o comportamento de arrastar e soltar. Este tópico fornece uma visão geral do suporte a arrastar e soltar no Windows Forms. Veja também Operações de arrastar e soltar e suporte à área de transferência.
Executando operações de arrastar e soltar
Para executar uma operação de arrastar e soltar, use o método DoDragDrop da classe Control. Para obter mais informações sobre como uma operação de arrastar e soltar é executada, consulte DoDragDrop. Para obter o retângulo sobre o qual o ponteiro do mouse deve ser arrastado antes que uma operação de arrastar e soltar comece, use a propriedade DragSize da classe SystemInformation.
Eventos relacionados a operações de arrastar e soltar
Há duas categorias de eventos em uma operação de arrastar e soltar: eventos que ocorrem no destino atual da operação de arrastar e soltar e eventos que ocorrem na origem da operação de arrastar e soltar.
Eventos no alvo atual
A tabela a seguir mostra os eventos que ocorrem no destino atual de uma operação de arrastar e soltar.
Evento do mouse | Descrição |
---|---|
DragEnter | Esse evento ocorre quando um objeto é arrastado para os limites do controle. O manipulador para esse evento recebe um argumento do tipo DragEventArgs. |
DragOver | Esse evento ocorre quando um objeto é arrastado enquanto o ponteiro do mouse está dentro dos limites do controle. O manipulador para esse evento recebe um argumento do tipo DragEventArgs. |
DragDrop | Esse evento ocorre quando uma operação de arrastar e soltar é concluída. O manipulador para esse evento recebe um argumento do tipo DragEventArgs. |
DragLeave | Esse evento ocorre quando um objeto é arrastado para fora dos limites do controle. O manipulador para esse evento recebe um argumento do tipo EventArgs. |
A classe DragEventArgs fornece o local do ponteiro do mouse, o estado atual dos botões do mouse e das teclas modificadoras do teclado, os dados que estão sendo arrastados e DragDropEffects valores que especificam as operações permitidas pela origem do evento de arrastar e o efeito de destino para a operação de soltar.
Eventos na fonte
A tabela a seguir mostra os eventos que ocorrem na origem da operação de arrastar e soltar.
Evento do mouse | Descrição |
---|---|
GiveFeedback | Esse evento ocorre durante uma operação de arrastar. Ele fornece uma oportunidade de dar uma pista visual para o usuário de que a operação de arrastar e soltar está ocorrendo, como alterar o ponteiro do mouse. O manipulador para esse evento recebe um argumento do tipo GiveFeedbackEventArgs. |
QueryContinueDrag | Esse evento é gerado durante uma operação de arrastar e soltar e permite que a fonte de arraste determine se a operação de arrastar e soltar deve ser cancelada. O manipulador para esse evento recebe um argumento do tipo QueryContinueDragEventArgs. |
A classe QueryContinueDragEventArgs fornece o estado atual dos botões do mouse e teclas modificadoras do teclado, um valor especificando se a tecla ESC foi pressionada e um valor DragAction que pode ser definido para especificar se a operação de arrastar e soltar deve continuar.
Ver também
.NET Desktop feedback