Share via


Συναρτήσεις EditForm, NewForm, SubmitForm, ResetForm και ViewForm

Ισχύει σε: Εφαρμογές καμβά

Προβάλετε, επεξεργαστείτε ή δημιουργήστε ένα στοιχείο, αποθηκεύστε τα περιεχόμενα και επαναφέρετε τα στοιχεία ελέγχου σε ένα στοιχείο ελέγχου Edit form.

Επισκόπηση

Αυτές οι συναρτήσεις αλλάζουν την κατάσταση του στοιχείου ελέγχου Edit form. Το στοιχείο ελέγχου Form μπορεί να έχει μία από αυτές τις λειτουργίες:

Λειτουργία Περιγραφή
FormMode.Edit Η φόρμα συμπληρώνεται με μια υπάρχουσα καρτέλα και ο χρήστης μπορεί να τροποποιήσει τις τιμές των πεδίων. Αφού ολοκληρωθεί η διαδικασία, ο χρήστης μπορεί να αποθηκεύσει τις αλλαγές στην καρτέλα.
FormMode.New Η φόρμα συμπληρώνεται με προεπιλεγμένες τιμές και ο χρήστης μπορεί να τροποποιήσει τις τιμές των πεδίων. Αφού ολοκληρωθεί η διαδικασία, ο χρήστης μπορεί να προσθέσει την καρτέλα στην προέλευση δεδομένων.
FormMode.View Η φόρμα συμπληρώνεται με μια υπάρχουσα καρτέλα, ωστόσο ο χρήστης δεν μπορεί να τροποποιήσει τις τιμές των πεδίων.

Περιγραφή

Αυτές οι συναρτήσεις συχνά καλούνται από τον τύπο OnSelect ενός στοιχείου ελέγχου Button ή Image, έτσι ώστε ο χρήστης να μπορεί να αποθηκεύσει τις τροποποιήσεις, να τις εγκαταλείψει ή να δημιουργήσει μια καρτέλα. Μπορείτε να χρησιμοποιήσετε τα στοιχεία ελέγχου και αυτές τις συναρτήσεις μαζί για να δημιουργήσετε μια ολοκληρωμένη λύση.

Αυτές οι συναρτήσεις δεν επιστρέφουν τιμές.

Μπορείτε να χρησιμοποιήσετε αυτές τις συναρτήσεις μόνο σε τύπους συμπεριφοράς.

SubmitForm

Χρησιμοποιήστε τη συνάρτηση SubmitForm στην ιδιότητα OnSelect ενός στοιχείου ελέγχου Button για να αποθηκεύσετε τις αλλαγές σε ένα στοιχείο ελέγχου Form στην προέλευση δεδομένων.

Πριν από την υποβολή οποιωνδήποτε αλλαγών, αυτή η λειτουργία ελέγχει για ζητήματα επικύρωσης με οποιοδήποτε πεδίο που έχει επισημανθεί ως υποχρεωτικό ή που έχει έναν ή περισσότερους περιορισμούς στην τιμή του. Αυτή η συμπεριφορά ταιριάζει με εκείνη της συνάρτησης Validate.

Η συνάρτηση SubmitForm ελέγχει επίσης την ιδιότητα Valid της φόρμας, η οποία αποτελεί συνάθροιση όλων των ιδιοτήτων Valid των στοιχείων ελέγχου τύπου Card που περιέχει το στοιχείο ελέγχου Form. Εάν παρουσιαστεί κάποιο πρόβλημα, τα δεδομένα δεν υποβάλλονται και οι ιδιότητες Error και ErrorKind του στοιχείου ελέγχου Form ρυθμίζονται ανάλογα.

Εάν περάσει τον έλεγχο επικύρωσης, η συνάρτηση SubmitForm υποβάλλει την αλλαγή στο αρχείο προέλευσης δεδομένων.

  • Εάν είναι επιτυχής, εκτελείται η συμπεριφορά OnSuccess της φόρμας και καταργούνται οι ιδιότητες Error και ErrorKind. Εάν η φόρμα ήταν στη λειτουργία FormMode.New, επιστρέφει στη λειτουργία FormMode.Edit.
  • Εάν δεν είναι επιτυχής, εκτελείται η συμπεριφορά OnFailure της φόρμας, και ορίζονται αντίστοιχα οι ιδιότητες Error και ErrorKind. Η λειτουργία της φόρμας δεν αλλάζει.

EditForm

Η συνάρτηση EditForm αλλάζει την κατάσταση λειτουργίας του στοιχείου ελέγχου Form σε FormMode.Edit. Σε αυτήν την κατάσταση λειτουργίας, τα περιεχόμενα της ιδιότητας Item του στοιχείου ελέγχου Form χρησιμοποιούνται για τη συμπλήρωση της φόρμας. Εάν η SubmitForm εκτελείται όταν η φόρμα είναι σε αυτή την κατάσταση λειτουργίας, η καρτέλα αλλάζει, δεν δημιουργείται. FormMode.Edit είναι η προεπιλεγμένη ρύθμιση για το στοιχείο ελέγχου Form.

Σημείωμα

Όταν η φόρμα είναι σε λειτουργία επεξεργασίας το στοιχείο είναι null, οι ιδιότητες της κάρτας δεδομένων δεν αξιολογούνται και θα επιστρέψουν τις προεπιλεγμένες τιμές.

NewForm

Η συνάρτηση NewForm αλλάζει την κατάσταση λειτουργίας του στοιχείου ελέγχου Form σε FormMode.New. Σε αυτήν την κατάσταση λειτουργίας, τα περιεχόμενα της ιδιότητας Item του στοιχείου ελέγχου Form παραβλέπονται, και οι προεπιλεγμένες τιμές της ιδιότητας DataSource της φόρμας συμπληρώνουν τη φόρμα. Εάν η SubmitForm εκτελείται όταν η φόρμα είναι σε αυτή την κατάσταση λειτουργίας, η καρτέλα δημιουργείται, δεν αλλάζει.

ResetForm

Η συνάρτηση ResetForm επαναφέρει τα περιεχόμενα μιας φόρμας στις αρχικές τιμές τους, προτού ο χρήστης κάνει οποιεσδήποτε αλλαγές. Εάν η φόρμα είναι στη λειτουργία FormMode.New, επαναφέρεται στη λειτουργία FormMode.Edit. Η συμπεριφορά OnReset της φόρμας εκτελείται επίσης. Μπορείτε επίσης να επαναφέρετε επιμέρους στοιχεία ελέγχου με τη συνάρτηση Reset, αλλά μόνο από μέσα στη φόρμα.

ViewForm

Η συνάρτηση ViewForm αλλάζει την κατάσταση λειτουργίας του στοιχείου ελέγχου Form σε FormMode.View. Σε αυτήν την κατάσταση λειτουργίας, τα περιεχόμενα της ιδιότητας Item του στοιχείου ελέγχου Form χρησιμοποιούνται για τη συμπλήρωση της φόρμας. Οι συναρτήσεις SubmitForm και ResetForm δεν έχουν καμία επίδραση σε αυτή τη λειτουργία.

Ιδιότητα DisplayMode

Η τρέχουσα λειτουργία μπορεί να διαβαστεί μέσω της ιδιότητας Mode. Η κατάσταση λειτουργίας καθορίζει επίσης την τιμή της ιδιότητας DisplayMode η οποία μπορεί να χρησιμοποιηθεί από τις κάρτες δεδομένων και τα στοιχεία ελέγχου μέσα στο στοιχείο ελέγχου της φόρμας. Συχνά, η ιδιότητα DisplayMode της κάρτας ορίζεται σε Parent.DisplayMode (με αναφορά στη φόρμα) όπως επίσης και η ιδιότητα DisplayMode του στοιχείου ελέγχου (με αναφορά στην κάρτα δεδομένων):

Λειτουργία DisplayMode Περιγραφή
FormMode.Edit DisplayMode.Edit Οι κάρτες δεδομένων και τα στοιχεία ελέγχου είναι επεξεργάσιμα, έτοιμα να αποδεχτούν τις αλλαγές σε μια καρτέλα.
FormMode.New DisplayMode.Edit Οι κάρτες δεδομένων και τα στοιχεία ελέγχου είναι επεξεργάσιμα, έτοιμα να αποδεχτούν μια νέα καρτέλα.
FormMode.View DisplayMode.View Οι κάρτες δεδομένων και τα στοιχεία ελέγχου δεν είναι επεξεργάσιμα και βελτιστοποιημένα για προβολή.

Σύνταξη

SubmitForm( FormName )

  • FormName - Υποχρεωτικό. Στοιχείο ελέγχου Form για υποβολή στην προέλευση δεδομένων.

EditForm( FormName )

  • FormName - Υποχρεωτικό. Στοιχείο ελέγχου Form για μετάβαση στη λειτουργία FormMode.Edit.

NewForm( FormName )

  • FormName - Υποχρεωτικό. Στοιχείο ελέγχου Form για μετάβαση στη λειτουργία FormMode.New.

ResetForm( FormName )

  • FormName - Υποχρεωτικό. Στοιχείο ελέγχου Form για επαναφορά στις αρχικές τιμές. Αλλάζει επίσης την κατάσταση λειτουργίας της φόρμας από FormMode.New σε FormMode.Edit.

ViewForm( FormName )

  • FormName - Υποχρεωτικό. Στοιχείο ελέγχου Form για μετάβαση στη λειτουργία FormMode.View.

Παραδείγματα

Ανατρέξτε στο θέμα Κατανόηση φορμών δεδομένων για πλήρη παραδείγματα.

  1. Προσθέστε ένα στοιχείο ελέγχου Button, ορίστε την ιδιότητά του Text ώστε να δείχνει σε Αποθήκευση και ορίστε την ιδιότητά του OnSelect σε αυτόν τον τύπο:

    SubmitForm( EditForm )

  2. Ορίστε την ιδιότητα OnFailure ενός στοιχείου ελέγχου Form σε κενό και την ιδιότητά του OnSuccess στον παρακάτω τύπο:

    Back()

  3. Ονομάστε το στοιχείο ελέγχου Label σε ErrorText και ορίστε την ιδιότητά του Text σε αυτόν τον τύπο:

    EditForm.Error

    Όταν ο χρήστης επιλέξει το κουμπί Αποθήκευση, οποιεσδήποτε αλλαγές στο στοιχείο ελέγχου Form υποβάλλονται στην υποκείμενη προέλευση δεδομένων.

    • Εάν η υποβολή είναι επιτυχής, οι αλλαγές θα αποθηκευτούν ή, εάν το στοιχείο ελέγχου Form βρίσκεται στη λειτουργία Δημιουργία, θα δημιουργηθεί μια καρτέλα. Το στοιχείο ErrorText είναι κενό και εμφανίζεται ξανά η προηγούμενη οθόνη.
    • Εάν η υποβολή αποτύχει, το στοιχείο ErrorText εμφανίζει ένα μήνυμα σφάλματος φιλικό προς τον χρήστη και η τρέχουσα οθόνη παραμένει ορατή, έτσι ώστε ο χρήστης να διορθώσει το πρόβλημα και να προσπαθήσει ξανά.
  4. Προσθέστε ένα στοιχείο ελέγχου Button, ορίστε την ιδιότητά του Text ώστε να δείχνει Άκυρο και ορίστε την ιδιότητά του OnSelect σε αυτόν τον τύπο:

    ResetForm( EditForm ); Back()

    Όταν ο χρήστης επιλέξει το κουμπί Άκυρο, οι τιμές του στοιχείου ελέγχου Form επαναφέρονται σε αυτές που υπήρχαν προτού ξεκινήσει την επεξεργασία του ο χρήστης, εμφανίζεται ξανά η προηγούμενη οθόνη και το στοιχείο ελέγχου Form επιστρέφει στη λειτουργία Επεξεργασία σε περίπτωση που βρισκόταν σε λειτουργία Δημιουργία.

  5. Προσθέστε ένα στοιχείο ελέγχου Button, ορίστε την ιδιότητά του Text ώστε να δείχνει σε Δημιουργία και ορίστε την ιδιότητά του OnSelect σε αυτόν τον τύπο:

    NewForm( EditForm ); Navigate( EditScreen; None )

    Όταν ο χρήστης επιλέξει το κουμπί Νέο, το στοιχείο ελέγχου Form αλλάζει σε λειτουργία Δημιουργία, οι προεπιλεγμένες τιμές για την προέλευση δεδομένων του στοιχείου ελέγχου Form συμπληρώνουν αυτό το στοιχείο ελέγχου και εμφανίζεται η οθόνη που περιέχει το στοιχείο ελέγχου Form. Όταν εκτελείται η συνάρτηση SubmitForm, δημιουργείται μια καρτέλα, αντί να ενημερώνεται.