Προσθέστε υποστήριξη για μεταφορτώσεις αρχείων με τη διαισθητική χρηστικότητα του drag and drop.
Πολλές σύγχρονες εφαρμογές λειτουργούν σε αρχεία που ένας χρήστης μπορεί να ανεβάσει στο σύστημά του. Οι επεξεργαστές εικόνας, τα IDE κώδικα και οι επεξεργαστές κειμένου είναι όλα παραδείγματα. Εάν δημιουργείτε μια εφαρμογή Windows Form, μπορείτε εύκολα να προσθέσετε αυτήν τη λειτουργία ως μέρος της διεπαφής χρήστη σας.
Οι εφαρμογές Φόρμας των Windows σάς επιτρέπουν να σύρετε και να αποθέσετε στοιχεία διεπαφής χρήστη, όπως πίνακες ή πλαίσια λίστας. Μπορείτε να χρησιμοποιήσετε αυτά τα στοιχεία διεπαφής χρήστη για να δημιουργήσετε τη λειτουργία μεταφοράς και απόθεσης. Όταν ο χρήστης σύρει ένα αρχείο σε έναν πίνακα, μπορείτε να εμφανίσετε σχόλια με βάση αυτό το αρχείο.
Πώς να δημιουργήσετε τη διεπαφή χρήστη για το κοντέινερ μεταφοράς και απόθεσης
Μπορείτε να χρησιμοποιήσετε ένα στοιχείο πίνακα για να δημιουργήσετε τη διεπαφή χρήστη για τη λειτουργία μεταφοράς και απόθεσης. Στη συνέχεια, μπορείτε να χρησιμοποιήσετε ένα στοιχείο διεπαφής χρήστη ListBox για να εμφανίσετε τα ονόματα των αρχείων που σύρει ένας χρήστης στον πίνακα.
- Δημιουργήστε μια νέα εφαρμογή Windows Forms.
- Στην εργαλειοθήκη, αναζητήστε ένα στοιχείο διεπαφής χρήστη του πίνακα και σύρετέ το στον καμβά.
- Επισημάνετε το νέο πλαίσιο. Στο παράθυρο ιδιοτήτων, αλλάξτε τις τιμές των παρακάτω ιδιοτήτων:
Ιδιοκτησία
Νέα Αξία
Ονομα
dragDropPanel
BackColor
Λευκός καπνός
BorderStyle
FixedSingle
Μέγεθος
600, 400
Ορατός
Αληθής
- Στην εργαλειοθήκη, αναζητήστε ένα στοιχείο διεπαφής χρήστη ListBox και σύρετέ το στον καμβά. Τοποθετήστε το έτσι ώστε να βρίσκεται μέσα στον πίνακα και βεβαιωθείτε ότι υπάρχει κάποιο διάστημα μεταξύ του ListBox και του πίνακα.
- Επισημάνετε το νέο ListBox και αλλάξτε τις τιμές των ακόλουθων ιδιοτήτων:
Ιδιοκτησία
Νέα Αξία
Ονομα
uploadedFilesList
BackColor
Λευκός καπνός
BorderStyle
Κανένας
Μέγεθος
500, 300
Ορατός
Ψευδής
Πώς να προσθέσετε το συμβάν μεταφοράς και απόθεσης
Μπορείς να χρησιμοποιήσεις συμβάντα σε μια εφαρμογή φόρμας Windows να εκτελεί ορισμένες λειτουργίες μόνο όταν συμβαίνουν ορισμένα γεγονότα.
Για να προσθέσετε λειτουργικότητα στον πίνακα μεταφοράς και απόθεσης, θα χρειαστεί να προσθέσετε δύο συμβάντα. Το συμβάν "DragEnter" θα συμβεί όταν σύρετε αρχεία στον πίνακα. Το συμβάν "DragDrop" θα συμβεί όταν αφήσετε το ποντίκι για να ρίξετε τα αρχεία στον πίνακα.
- Επισημάνετε το στοιχείο διεπαφής χρήστη του εξωτερικού πίνακα.
- Στο παράθυρο ιδιοτήτων, κάντε κλικ στο Αστραπή για να ανοίξετε τη λίστα συμβάντων.
- Κάντε διπλό κλικ στο DragEnter συμβάν για τη δημιουργία μιας νέας συνάρτησης. Αυτή η λειτουργία θα εκτελεστεί όταν σύρετε αρχεία στον πίνακα.
- Μέσα στη νέα λειτουργία, αλλάξτε το εικονίδιο του ποντικιού για να υποδείξει την ενέργεια μεταφοράς/απόθεσης:
ιδιωτικόςκενόςdragDropPanel_DragEnter(αποστολέας αντικειμένου, DragEventArgs e)
{
// Αλλάζει το εικονίδιο του ποντικιού
μι. Εφέ = DragDropEffects. Ολα;
} - Κάνε κλικ στο Φόρμα 1.cs [Σχεδίαση] καρτέλα στο επάνω μέρος του παραθύρου του Visual Studio, για να επιστρέψετε στην προβολή καμβά. Επισημάνετε το στοιχείο διεπαφής χρήστη του πίνακα.
- Στο παράθυρο ιδιοτήτων, κάντε κλικ στο Αστραπή για να επιστρέψετε στη λίστα συμβάντων. Αυτή τη φορά, κάντε διπλό κλικ στο DragDrop Εκδήλωση. Αυτό θα δημιουργήσει μια άλλη λειτουργία που θα εκτελεστεί όταν αφήσετε το ποντίκι για να ρίξετε τα αρχεία στον πίνακα.
- Μέσα στη νέα λειτουργία DragDrop, λάβετε τη λίστα των αρχείων που ο χρήστης σύρει στον πίνακα. Μπορείτε να το βρείτε στις λεπτομέρειες του συμβάντος που μεταβιβάζονται αυτόματα στη συνάρτηση.
ιδιωτικόςκενόςdragDropPanel_DragDrop(αποστολέας αντικειμένου, DragEventArgs e)
{
string[] files = (string[])e. Δεδομένα. GetData (DataFormats. FileDrop, ψευδής);
}
Τρόπος εμφάνισης της λίστας αρχείων που έχουν συρθεί
Τώρα που έχετε προσθέσει τη δυνατότητα μεταφοράς και απόθεσης αρχείων από τον χρήστη, μπορείτε να εμφανίσετε τα ονόματα των αρχείων χρησιμοποιώντας το στοιχείο διεπαφής χρήστη ListBox.
- Μέσα στη συνάρτηση dragDropPanel_DragDrop(), αφού λάβετε τη λίστα των αρχείων, χρησιμοποιήστε έναν βρόχο for για να κάνετε βρόχο σε κάθε αρχείο.
για κάθε (var αρχείο σε αρχεία)
{
} - Μέσα στο βρόχο for, λάβετε μόνο το όνομα του αρχείου. Διαχωρίστε το όνομα του αρχείου από τη διαδρομή του αρχείου και αποθηκεύστε το σε μια ξεχωριστή μεταβλητή. Εάν χρησιμοποιείτε Mac, ίσως χρειαστεί να τροποποιήσετε τον κώδικα για να ληφθούν υπόψη οι κάθετες προς τα εμπρός αντί για τις ανάστροφες κάθετες.
συμβολοσειρά Όνομα αρχείου = αρχείο. Υποσυμβολοσειρά (αρχείο. LastIndexOf("\\") + 1, αρχείο. Μήκος - (αρχείο. LastIndexOf("\\") + 1));
- Προσθέστε το όνομα του αρχείου στο στοιχείο διεπαφής χρήστη ListBox.
δοκιμάστε
{
uploadedFilesList.Είδη.Προσθήκη(όνομα αρχείου);
}
σύλληψη (Εξαίρεσηεξαίρεση)
{
Κονσόλα. WriteLine(εξαίρεση);
} - Το ListBox δεν είναι ορατό από προεπιλογή. Μετά τον βρόχο for, αλλάξτε την ορατότητα του ListBox σε true:
uploadedFilesList. Ορατό = αληθής;
- Τροποποιήστε τον κατασκευαστή στο επάνω μέρος του αρχείου. Ρυθμίστε το AllowDrop και Αυτόματη κύλιση ιδιότητες του πίνακα μεταφοράς και απόθεσης σε αληθές.
δημόσιο Form1()
{
InitializeComponent();
dragDropPanel. AllowDrop = αληθής;
dragDropPanel. Αυτόματη κύλιση = αληθής;
}
Πώς να εκκαθαρίσετε τη λίστα
Αφού ο χρήστης σύρει στοιχεία στον πίνακα, μπορεί να θέλει να διαγράψει τη λίστα και να ξεκινήσει ξανά. Μπορείτε να προσθέσετε ένα κουμπί για να διαγράψετε τη λίστα όταν ο χρήστης κάνει κλικ σε αυτήν.
- Χρησιμοποιώντας την εργαλειοθήκη, σύρετε ένα κουμπί στον καμβά.
- Επισημάνετε το κουμπί. Χρησιμοποιήστε το παράθυρο ιδιοτήτων για να αλλάξετε τις ακόλουθες ιδιότητες στις νέες τιμές:
Ιδιοκτησία
Νέα Αξία
Ονομα
διαφανές κουμπί
Κείμενο
Σαφή
- Κάντε διπλό κλικ στο κουμπί για να δημιουργήσετε μια νέα λειτουργία. Αυτή η λειτουργία θα εκτελεστεί όταν κάνετε κλικ στο κουμπί κατά το χρόνο εκτέλεσης:
ιδιωτικόςκενόςclearButton_Click(αποστολέας αντικειμένου, EventArgs e)
{}
- Μέσα στη συνάρτηση, διαγράψτε τα περιεχόμενα του στοιχείου διεπαφής χρήστη ListBox και αποκρύψτε το:
ιδιωτικόςκενόςclearButton_Click(αποστολέας αντικειμένου, EventArgs e)
{
uploadedFilesList.Είδη.Σαφή();
uploadedFilesList. Ορατό = ψευδής;
}
Πώς να δοκιμάσετε τον πίνακα μεταφοράς και απόθεσης
Για να ελέγξετε τη λειτουργία μεταφοράς και απόθεσης, εκτελέστε την εφαρμογή και σύρετε μερικά αρχεία στον πίνακα. Εάν χρειάζεται, μπορείτε επίσης αποσφαλμάτωση της εφαρμογής Winforms στο Visual Studio κατά την εκτέλεση. Αυτό θα σας βοηθήσει να κατανοήσετε τι συμβαίνει σε κάθε γραμμή κώδικα.
- Πατήστε το πράσινο κουμπί αναπαραγωγής στο επάνω μέρος του παραθύρου του Visual Studio για να εκτελέσετε την εφαρμογή.
- Σύρετε μερικά αρχεία από τον εξερευνητή αρχείων σας και αποθέστε τα στον πίνακα. Βεβαιωθείτε ότι δεν εκτελείτε το Visual Studio σε λειτουργία διαχειριστή. Θα χρειαστεί να διαμορφώσετε επιπλέον δικαιώματα ασφαλείας για μεταφορά και απόθεση για να λειτουργήσει σε λειτουργία διαχειριστή.
- Ο πίνακας θα ενημερωθεί για να σας δείξει τα ονόματα των αρχείων που σύρατε στον πίνακα.
- Σύρετε αρκετά αρχεία και θα δείτε ότι ο πίνακας μεταφοράς και απόθεσης εμφανίζει αυτόματα μια γραμμή κύλισης στη δεξιά πλευρά.
- Κάνε κλικ στο Σαφή κουμπί για να αδειάσετε τη λίστα.
Χρήση της λειτουργίας μεταφοράς και απόθεσης σε εφαρμογές φορμών των Windows
Τώρα ελπίζουμε να κατανοήσετε πώς μπορείτε να προσθέσετε τη λειτουργία μεταφοράς και απόθεσης στην εφαρμογή Φόρμας των Windows. Υπάρχουν πολλές άλλες δυνατότητες που μπορείτε να εξερευνήσετε για να κάνετε ενδιαφέροντα πράγματα με τις Φόρμες των Windows.