AR의 답변 외에도 TextBox
드롭 에 사용 하려면 다음 사항을 알아야합니다.
TextBox
에 대한 기본 처리가 이미있는 것 같습니다 DragAndDrop
. 데이터 개체가 String
이면 단순히 작동합니다. 다른 유형은 처리되지 않으며 금지 된 마우스 효과가 발생 하고 Drop 핸들러가 호출되지 않습니다.
당신이 당신의 자신의 처리를 활성화 할 수 있습니다 것 같아 e.Handled
에 진정한 A의 PreviewDragOver
이벤트 핸들러.
XAML
<TextBox AllowDrop="True" x:Name="RtbInputFile" HorizontalAlignment="Stretch" HorizontalScrollBarVisibility="Visible" VerticalScrollBarVisibility="Visible" />
씨#
RtbInputFile.Drop += RtbInputFile_Drop;
RtbInputFile.PreviewDragOver += RtbInputFile_PreviewDragOver;
private void RtbInputFile_PreviewDragOver(object sender, DragEventArgs e)
{
e.Handled = true;
}
private void RtbInputFile_Drop(object sender, DragEventArgs e)
{
if (e.Data.GetDataPresent(DataFormats.FileDrop))
{
// Note that you can have more than one file.
string[] files = (string[])e.Data.GetData(DataFormats.FileDrop);
var file = files[0];
HandleFile(file);
}
}