Ισχύει για
Αντικείμενο Form |
Αντικείμενο Report |
Μπορείτε να χρησιμοποιήσετε την ιδιότητα Dirty για να προσδιορίσετε εάν η τρέχουσα εγγραφή έχει τροποποιηθεί μετά την τελευταία αποθήκευση. Για παράδειγμα, μπορεί να θέλετε να ρωτήσετε τον χρήστη εάν οι αλλαγές σε μια εγγραφή ήταν σκόπιμες και, εάν όχι, να επιτρέψετε στον χρήστη να μετακινηθεί στην επόμενη εγγραφή χωρίς να αποθηκευτούν οι αλλαγές. Ανάγνωσης/εγγραφής, Δυαδική τιμή.
παράσταση.Dirty
παράσταση Υποχρεωτικό. Μια παράσταση που επιστρέφει ένα από τα αντικείμενα της λίστας "Ισχύει για".
Παρατηρήσεις
Η ιδιότητα Dirty χρησιμοποιεί τις ακόλουθες ρυθμίσεις.
Ρύθμιση |
Visual Basic |
Περιγραφή |
Αληθές |
Αληθές |
Η τρέχουσα εγγραφή έχει τροποποιηθεί. |
Ψευδές |
Ψευδές |
Η τρέχουσα εγγραφή δεν έχει τροποποιηθεί. |
Αυτή η ιδιότητα είναι διαθέσιμη σε προβολή φόρμας και σε προβολή φύλλου δεδομένων.
Ο ορισμός ή η ανάγνωση αυτής της ιδιότητας μπορεί να γίνει χρησιμοποιώντας μια μακροεντολή ή κώδικα της Visual Basic for Applications (VBA).
Κατά την αποθήκευση μιας εγγραφής, η Microsoft Office Access 2007 ορίζει την ιδιότητα Dirty σε Ψευδές. Όταν ένας χρήστης πραγματοποιεί αλλαγές σε μια εγγραφή, η ιδιότητα ορίζεται σε Αληθές.
Παράδειγμα
Το παράδειγμα που ακολουθεί ενεργοποιεί το κουμπί btnUndo όταν αλλάζουν δεδομένα. Η υπορουτίνα UndoEdits() καλείται από το συμβάν AfterUpdate των στοιχείων ελέγχου πλαισίου κειμένου. Το κλικ στο ενεργοποιημένο κουμπί btnUndo επαναφέρει την αρχική τιμή του στοιχείου ελέγχου, χρησιμοποιώντας την ιδιότητα OldValue.
Sub UndoEdits()
If Me.Dirty Then
Me!btnUndo.Enabled = True ' Enable button.
Else
Me!btnUndo.Enabled = False ' Disable button.
End If
End Sub
Sub btnUndo_Click()
Dim ctlC As Control
' For each control.
For Each ctlC in Me.Controls
If ctlC.ControlType = acTextBox Then
' Restore Old Value.
ctlC.Value = ctlC.OldValue
End If
Next ctlC
End Sub