DragDrop.DragOver DragDrop.DragOver DragDrop.DragOver Attached Event

정의

놓기 대상으로 사용되는 요소 범위 내에서 개체를 끄는 동안 지속적으로 발생합니다.Occurs continuously while an object is dragged within the bounds of an element that is acting as a drop target.

see AddDragOverHandler, and RemoveDragOverHandler
see AddDragOverHandler, and RemoveDragOverHandler
see AddDragOverHandler, and RemoveDragOverHandler

예제

다음 예제에서는 Ellipse 요소에 대한 DragOver 이벤트 처리기를 보여 줍니다.The following example shows the DragOver event handler for an Ellipse element. 이 코드는 타원 위로 끄는 DataObjectBrush로 변환될 수 있는 문자열 데이터가 포함되어 있는지 여부를 확인합니다.This code checks to see if the DataObject being dragged over the ellipse contains string data that can be converted to a Brush. 포함되어 있는 경우 DragEventArgs.Effects 속성을 Copy로 설정합니다.If so, it sets the DragEventArgs.Effects property to Copy. 이는 데이터를 타원에 복사할 수 있음을 끌기 소스에 나타냅니다.This indicates to the drag source that the data can be copied to the ellipse. 데이터를 Brush로 변환할 수 없는 경우 DragEventArgs.Effects 속성이 None으로 설정됩니다.If the data cannot be converted to a Brush, the DragEventArgs.Effects property is set to None. 이는 타원이 데이터에 유효한 놓기 대상이 아님을 끌기 소스에 나타냅니다.This indicates to the drag source that the ellipse is not a valid drop target for the data.

private void ellipse_DragOver(object sender, DragEventArgs e)
{
    e.Effects = DragDropEffects.None;

    // If the DataObject contains string data, extract it.
    if (e.Data.GetDataPresent(DataFormats.StringFormat))
    {
        string dataString = (string)e.Data.GetData(DataFormats.StringFormat);

        // If the string can be converted into a Brush, allow copying.
        BrushConverter converter = new BrushConverter();
        if (converter.IsValid(dataString))
        {
            e.Effects = DragDropEffects.Copy | DragDropEffects.Move;
        }
    }
}
Private Sub Ellipse_DragOver(ByVal sender As System.Object, ByVal e As System.Windows.DragEventArgs)
    e.Effects = DragDropEffects.None

    ' If the DataObject contains string data, extract it.
    If e.Data.GetDataPresent(DataFormats.StringFormat) Then
        Dim dataString = e.Data.GetData(DataFormats.StringFormat)

        ' If the string can be converted into a Brush, convert it.
        Dim converter As New BrushConverter()
        If converter.IsValid(dataString) Then
            e.Effects = DragDropEffects.Copy Or DragDropEffects.Move
        End If
    End If
End Sub

설명

이 이벤트는 놓기 대상 역할을 하는 요소 범위 내에서 끌어 온된 개체는 동안 지속적으로 발생 합니다.This event is raised continuously while a dragged object is within the bounds of an element that is acting as a drop target. 경우에이 이벤트가 발생 하지 않습니다 요소의 AllowDrop 속성은 false합니다.This event is not raised if the element's AllowDrop property is false.

합니다 DragOver 사용 하 여 이벤트 쌍을 이룹니다는 GiveFeedback 끌기 소스에서 이벤트입니다.The DragOver event is paired with the GiveFeedback event on the drag source. DragOver 이벤트 처리기에서 일반적으로 체크 전송 된 데이터가 놓기 대상에서 처리할 수 있는 형식 인지 합니다.In the DragOver event handler, you typically check that the transferred data is in a format that the drop target can process. 눌렀는지 여부를 보조키는 일반적으로 나타내는 사용자를 이동 또는 복사 작업을 의도 여부를 확인할 수 있습니다.You can also check whether any modifier keys are pressed, which typically indicates whether the user intends a move or a copy action. 이러한 검사가 수행된 후 DragEventArgs.Effects 속성을 설정하여 끌기 소스에 데이터를 놓을 때의 효과를 알립니다.After these checks are performed, you set the DragEventArgs.Effects property to notify the drag source what effect dropping the data will have. 끌기 소스는이 정보는 Effects 의 속성을 GiveFeedback 이벤트 인수를 사용자에 게 피드백을 제공 하는 적절 한 커서를 설정할 수 있습니다.The drag source receives this information in the Effects property of the GiveFeedback event arguments, and can set an appropriate cursor to give feedback to the user.

라우팅 이벤트 정보Routed Event Information

식별자 필드Identifier field DragOverEvent
라우팅 전략Routing strategy 버블링Bubbling
대리자Delegate DragEventHandler

해당 터널링 이벤트가 PreviewDragOver합니다.The corresponding tunneling event is PreviewDragOver.

적용 대상

추가 정보