इसके अतिरिक्त एआर के जवाब के लिए। कृपया ध्यान दें कि यदि आप निम्नलिखित सामग्री जानना चाहते हैं तो TextBox
का उपयोग करना चाहते हैं।
TextBox
DragAndDrop
के लिए पहले से ही कुछ डिफ़ॉल्ट हैंडलिंग प्रतीत होता है। यदि आपकी डेटा ऑब्जेक्ट String
है, तो यह बस काम करता है। अन्य प्रकारों को संभाला नहीं जाता है और आपको निषिद्ध माउस प्रभाव मिलता है और आपका ड्रॉप हैंडलर कभी नहीं कहा जाता है।
ऐसा लगता है जैसे आप एक PreviewDragOver
ईवेंट हैंडलर में e.Handled
को सच के साथ अपने स्वयं निपटने सक्षम कर सकते हैं।
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);
}
}
स्रोत
2016-05-24 14:02:48
भयानक एक आकर्षण काम करता है, बस बदली "HandleFileOpen (फ़ाइलें [0]);" "foreach (फ़ाइलों में स्ट्रिंग फ़ाइल) {ओपनफाइल (फ़ाइल);}" - धन्यवाद :) –
यह मेरे लिए काम नहीं कर रहा है:/ –
@Matteo Care विस्तृत करने के लिए? –