Καλώς ορίσατε στο dotNETZone.gr - Σύνδεση | Εγγραφή | Βοήθεια
σε

 

Αρχική σελίδα Ιστολόγια Συζητήσεις Εκθέσεις Φωτογραφιών Αρχειοθήκες

Ακύρωση διαδικασίας <handle recreation>

Îåêßíçóå áðü ôï ìÝëïò mclisme. Τελευταία δημοσίευση από το μέλος mclisme στις 20-03-2009, 11:29. Υπάρχουν 0 απαντήσεις.
Ταξινόμηση Δημοσιεύσεων: Προηγούμενο Επόμενο
  •  20-03-2009, 11:29 49447

    Ακύρωση διαδικασίας <handle recreation>

    Πολύ συγκεκριμένα: Έχω ένα treeview στο οποίο θέλω να αλλάζω κατά το run-time την ιδιότητα των checkboxes απο true σε false. Δηλαδή ανάλογα τις συνθήκες, να εμφανίζονται και να εξαφανίζονται τα checkboxes. Φυσικά ανά πάσα στιγμή το treeview έχει μια συγκεκριμένη μορφή που έχει φτιάξει ο χρήστης, με κάποια nodes να είναι expanded και άλλα collapsed (Πολλά τον αριθμό). Όταν αλλάζω απο false σε true όλα μένουν ως έχουν και απλά εμφανίζονται δίπλα τα checkboxes. Το πρόβλημα μου είναι όταν αλλάζω από true σε false όπου αυτόματα (απο την VB) ακολουθεί collapse ολοκληρου του treeview με αποτέλεσμα να χάνεται η υπάρχουσα μορφή ανοιγμενων/κλεισμένων nodes και να το καθιστά εξαιρετικά άβολο για το χρήστη. Η συγκεκριμένη συμπεριφορά εξάλλου αναφέρεται και στο documentation απο το οποίο παραθέτω:

    Note:

    When setting the CheckBoxes property at run time, the TreeView handle is recreated (see Control..::.RecreateHandle) to update the control's appearance. This causes all tree nodes to be collapsed, with the exception of the selected TreeNode.


    Ακριβώς η περιπτωσή μου. Στην ουσία τώρα, προσπάθησα να σκεφτώ έναν τρόπο να εμποδίζω το collapse όταν τα checkboxes είναι true, χρησιμοποιώντας την BeforeCollapse μέθοδο αλλά χωρίς επιτυχία, ίσως επειδή δεν λαμβάνει καν τόπο διαδικασία  collapse αλλά handle recreation κατευθείαν. Και εδώ έρχεται το ερώτημα μου, εφόσον δεν υπάρχει κάποια αντίστοιχη "BeforeHandeRecreation" μέθοδος στο treeview, μπορώ να το εμποδίσω με κάποιον άλλο τρόπο?
Προβολή Τροφοδοσίας RSS με μορφή XML
Με χρήση του Community Server (Commercial Edition), από την Telligent Systems