|
Όταν κάνουμε μια αίτηση φόρμας, μερικές φορές χρειάζεται να λάβουμε πληροφορίες σχετικά με την τρέχουσα φόρμα ή να καλέσουμε τα στοιχεία ελέγχου άλλων φορμών. Εδώ εισάγω δύο μεθόδους για να το πετύχω αυτό.
Όταν χρειάζεται να καλέσουμε στοιχεία ελέγχου από άλλες φόρμες σε μια φόρμα, μπορούμε να χρησιμοποιήσουμε στοιχεία ελέγχου. CheckForIllegaCrossThreadCalls=false; Για παράδειγμα: Button.CheckForIllegalCrossThreadCalls=false; Φυσικά, μπορούμε να κάνουμε και ολόκληρη τη φόρμα με σταυρωτά νήματα Form.CheckForIllegalCrossThreadCalls=false; Αυτό μας επιτρέπει να έχουμε πρόσβαση στα στοιχεία ελέγχου ή τις ιδιότητες αυτής της φόρμας σε άλλες μορφές. Αυτή μπορεί να μην είναι η ασφαλέστερη μέθοδος και μερικές φορές ο εντοπισμός σφαλμάτων θα μας δώσει ένα σφάλμα.
Εδώ θα παρουσιάσω μια άλλη μέθοδο στην οποία μπορείτε να έχετε πρόσβαση σε όλα τα νήματα. Το Invoke μεταβαίνει στο νήμα φόρμας για να εκτελέσει τη συνάρτηση στον πληρεξούσιο
Πρώτον, πρέπει να κηρύξουμε μια επιτροπή. δημόσιος αντιπρόσωπος void DelSetTime(object str); Στη συνέχεια, πρέπει απλώς να προετοιμάσουμε τη λειτουργία που πρέπει να εκτελεστεί, public void setTime(object str); Τώρα μπορούμε να βάλουμε τον εκπρόσωπο στο νήμα της φόρμας για εκτέλεση Αντιπρόσωπος d=new DelsetTime(setTime); αυτό. Invoke(d,Datetime.Now.ToString()); Με αυτόν τον τρόπο μπορούμε να επιτύχουμε πρόσβαση μεταξύ νημάτων.
Κάθε φόρμα έχει ένα νήμα φόρμας, το οποίο είναι κυρίως υπεύθυνο για την ολοκλήρωση του σχεδίου της φόρμας και των στοιχείων ελέγχου φόρμας Αυτό το νήμα ονομάζουμε νήμα φόρμας ή κύριο νήμα. Πολλές φορές χρειάζεται να προσθέσουμε νήματα στη φόρμα για να επεξεργαστούμε τα δεδομένα και, στη συνέχεια, μπορούμε να ορίσουμε αυτά τα νήματα που δημιουργήθηκαν πρόσφατα ως νήματα φόντου όταν η φόρμα είναι κλειστή Το νήμα θα τελειώσει επίσης. ThreadStart ths=νέο ThreadStart(Demo); Νήμα th= νέο νήμα (ths); ου. Έναρξη(); ου. IsBackground=αληθές;
Πρωτότυπο: http://bingdao.sinaapp.com/net%E4%BD%93%E7%B3%BB/380.html
|