2015-05-08 4 views
0

У меня есть текстовое поле в приложении WPF, которое я хочу, чтобы иметь возможность перетаскивать текст из внешнего приложения (блокнот ++). Обработчик PreviewDrop отлично работает, но когда я получаю текст из текстового поля после вызова обработчика (myTxtBox.Text), все, что я получаю, это пустая строка. Как только я отбрасываю текст в текстовое поле, я хочу, чтобы обработчик запускался и вызывал другой метод, который будет что-то делать с отбрасываемым текстовым вводом. но его стрельба слишком быстро. какие-либо предложения?WPF - нужно перетащить текст из блокнота, а затем вызвать метод

мой метод обработчика

private void myTxtBox_Drop(object sender, DragEventArgs e) 
{ 
    string itemID = myTxtBox.Text.Trim(); 
} 

XAML текстового поля

<TextBox x:Name="myTxtBox" Height="23" Margin="5,61,5,0" TextWrapping="Wrap" VerticalAlignment="Top" Grid.ColumnSpan="1" LostFocus="btnLookup_Click" Drop="myTxtBox_Drop" KeyDown="myTxtBox_KeyDown" AllowDrop="True" PreviewDrop="myTxtBox_Drop" /> 
+0

как перетащить из блокнота в любом случае? –

+0

выделите текст и перетащите его над – user1977591

+0

интересный стандартный блокнот, кажется, не позволяет вам «перетаскивать» что угодно, он просто пытается снова выделить. я могу сделать это в Word и т. д., но я хотел бы знать, как это делает ваша NotePad. –

ответ

1

Попробуйте это, чтобы получить ваш упал текст:

string itemID = e.Data.GetData(DataFormats.Text).ToString().Trim(); 
+0

Чувак, вы - мужчина! Спасибо !! – user1977591

+0

без проблем. я споткнулся, пытаясь понять, как драпировать и капля в обычном блокноте lol –

Смежные вопросы