ToolStripItem.DragLeave Событие
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Происходит, когда пользователь перетаскивает элемент, а указатель мыши больше не находится в клиентской области этого элемента.
public:
event EventHandler ^ DragLeave;
[System.ComponentModel.Browsable(false)]
public event EventHandler DragLeave;
[System.ComponentModel.Browsable(false)]
public event EventHandler? DragLeave;
[<System.ComponentModel.Browsable(false)>]
member this.DragLeave : EventHandler
Public Custom Event DragLeave As EventHandler
Тип события
- Атрибуты
Примеры
В следующем примере кода демонстрируется использование этого элемента. В этом примере обработчик событий сообщает о возникновении DragLeave события. Этот отчет поможет вам узнать, когда происходит событие, и помочь вам в отладке. Чтобы сообщить о нескольких событиях или событиях, которые происходят часто, рекомендуется заменить MessageBox.ShowConsole.WriteLine или добавить сообщение в многостроочное TextBox.
Чтобы запустить пример кода, вставьте его в проект, содержащий экземпляр типа, наследуемого от ToolStripItem, например, или ToolStripButtonToolStripMenuItem. Затем присвойте экземпляру ToolStripItem1 имя и убедитесь, что обработчик событий связан с событием DragLeave .
private void ToolStripItem1_DragLeave(Object sender, EventArgs e) {
MessageBox.Show("You are in the ToolStripItem.DragLeave event.");
}
Private Sub ToolStripItem1_DragLeave(sender as Object, e as EventArgs) _
Handles ToolStripItem1.DragLeave
MessageBox.Show("You are in the ToolStripItem.DragLeave event.")
End Sub
Комментарии
Событие DragLeave возникает, когда пользователь перетаскивает курсор из элемента управления или пользователь отменяет текущую операцию перетаскивания.
В следующих замечаниях описывается, как возникают события, связанные с операциями перетаскивания.
Метод DoDragDrop определяет элемент в текущем расположении курсора. Затем он проверяет, является ли элемент допустимым целевым объектом удаления.
Если элемент является допустимым целевым объектом удаления, GiveFeedback событие вызывается с заданным эффектом перетаскивания. Список эффектов перетаскивания см. в DragDropEffects перечислении.
Изменения положения курсора мыши, состояния клавиатуры и состояния кнопки мыши отслеживаются следующим образом:
Если пользователь выходит из окна, DragLeave событие вызывается.
Если мышь вводит другой элемент, DragEnter вызывается элемент управления.
Если мышь перемещается, но остается в одном элементе, DragOver вызывается событие.
При изменении состояния QueryContinueDrag клавиатуры или кнопки мыши событие вызывается и определяет, следует ли продолжать перетаскивание данных или отменять операцию на основе значения Action свойства события QueryContinueDragEventArgs.
Если значение DragActionContinueравно, DragOver событие вызывается для продолжения операции, и GiveFeedback событие вызывается с новым эффектом, чтобы можно было задать соответствующую визуальную обратную связь. Список допустимых эффектов удаления см. в DragDropEffects перечислении.
События DragOverGiveFeedback связаны таким образом, чтобы при перемещении мыши по целевому объекту удаления пользователь получил наиболее up-to-date отзыв о положении мыши следующим образом:
Если значение DragActionDropравно, значение эффекта удаления возвращается источнику, поэтому исходное приложение может выполнять соответствующую операцию с исходными данными, например, вырезать данные, если операция была перемещением.
Если значение DragAction равно Cancel, DragLeave событие вызывается.