Πρόσφατα έπεσα επάνω σε ένα ανεξήγητο για εμένα σύμπτωμα που εκ πρώτης όψεως δεν θα έπρεπε να παρουσίαζε πρόβλημα. Είχα βάλει επάνω σε μία φόρμα τέσσερα κουμπιά.
Δημιουργία, Προβολή, Διαγραφή και Ανανέωση. Τα κλασσικά θα έλεγα που βάζουν όλοι.
Η λειτουργία της φόρμας είναι να δείχνει εγγραφές από έναν πίνακα οπότε αν αυτές δεν υπήρχαν θα ήθελα τα κουμπία Προβολή & Διαγραφή να είναι απενεργοποιημένα. Έβαλα λοιπόν στο BindingSource ListChanged Event τον εξής κώδικα:
btnEdit.Enabled=btnDelete.Enabled=RowsBindingSource.Count > 0
Ο παραπάνω κώδικας δεν παίζει. Το btnDelete πέρνει κανονικά την τιμή του ενώ το btnEdit την ανάποδη.
Αν έχω εγγραφές το Edit είναι απενεργοποιημένο και το Delete ενεργοποιημένο. Αν δεν έχω εγγραφές το Edit είναι ενεργοποιημένο και το Delete απενεργοποιημένο. Και όπως καταλαβαίνεται προβληματίστικα για την συμπεριφορά αυτή. Γιατί άραγε γίνεται αυτό;