Πρόκειται για μία συλλογή από 3 εξειδικευμένα textboxes :
AlphabeticBox : Για εισαγωγή αλφαβητικών στοιχείων μόνο. Μπορούμε να καθορίσουμε αν θα δεχόμαστε το κενό.
NumericBox : Για εισαγωγή αριθμητικών στοιχείων μόνο. Μπορούμε να καθορίσουμε τον τύπο των εισαγόμενων αριθμών (Short, Integer,
Long, Single, Double), καθώς και min-max τιμή.
DateBox : Για εισαγωγή ημερομηνιών μόνο. Κι εδώ μπορούμε να ορίσουμε min-max τιμή ημερομηνίας.
Το αντίστοιχο textbox έχει ενσωματωμένο έλεγχο εγκυρότητας των εισαγόμενων δεδομένων (Validation).
Στην παρακάτω εικόνα βλέπετε ένα παράδειγμα :
Χρήστος Μουρατίδης 2004
Αποσυμπιέσετε με ένα πρόγραμμα συμπίεσης πχ. WinZip τα περιεχόμενα του αρχείου InputControls.zip σε κάποιο φάκελο στο δίσκο. Θα δείτε να δημιουργείται ένας φάκελος με όνομα InputControls Test, ο οποίος περιέχει ένα project δείγματος χρήσης των controls
καθώς και το παρόν readme αρχείο.
Σε αρκετές εφαρμογές, ο προγραμματιστής επιθυμεί να εισάγει σε textboxes ένα συγκεκριμένο είδος δεδομένων (αλφαβητικά στοιχεία ή αριθμητικά ή ημερομηνιακά). Γι’ αυτό το λόγο χρησιμοποιεί το διαθέσιμο textbox της VB.NET, αναγκαζόμενος όμως να κάνει έλεγχο εγκυρότητας στη ρουτίνα OnValidating του textbox.
Τα τρία controls της συλλογής έχουν ενσωματωμένο έλεγχο εγκυρότητας για κάθε είδος δεδομένων. Εδικά, στο NumericBox και DateBox έχει τη δυνατότητα να ορίσει ελάχιστη-μέγιστη τιμή.
Παράδειγμα 1:
Imports InputControls.NumericBox
NumericBox1.NumericType = NumericTypeEnum.IntegerType
NumericBox1.MinValue = 0
NumericBox1.MaxValue = 1500
Στην ιδιότητα NumericType καθορίζουμε τον τύπο των αριθμητικών δεδομένων (εδώ Integer). Στην ιδιότητα MinValue θέσαμε την τιμή 0 και στην ιδιότητα MaxValue την τιμή 1500. Έτσι, δεν θα δέχεται τιμές έξω από τα όρια αυτά. Φυσικά, έχουμε τη δυνατότητα να ορίσουμε ένα από τα δύο όρια ή και κανένα.
Παράδειγμα 2:
DateBox1.MinValue
= “1/1/2004”
DateBox1.MaxValue
= “30/6/2004”
Για το DateBox, επίσης, μπορούμε να θέσουμε ελάχιστη-μέγιστη αποδεκτή ημερομηνία. Θα πρέπει να τις θέτουμε ως τιμή string. Τo control κάνει αυτόματα τους σχετικούς ελέγχους. Φυσικά, κι εδώ, έχουμε τη δυνατότητα να ορίσουμε ένα από τα δύο όρια ή και κανένα.
Δείτε την εφαρμογή επίδειξης.
Παρακάτω παρουσιάζονται οι ιδιότητες των controls :
1) AllowSpaces : Θα επιτρέπονται τα κενά
στο textbox;
2) ErrorText : To μήνυμα λάθους που θέλουμε να
εμφανίζεται στο Msgbox, όταν δεν δοθεί έγκυρη
τιμή.
3) ErrorTitle : Ο τίτλος στο Msgbox του
λάθους.
1) NumericType : Το είδος των αριθμητικών δεδομένων που
λαμβάνεται από την απαρίθμηση NumericTypeEnum.
2) MinValue : H minimum
αποδεκτή τιμή
(κάτω όριο).
3) MaxValue : H maximum
αποδεκτή τιμή
(πάνω όριο).
4) ErrorText : To μήνυμα λάθους που θέλουμε να
εμφανίζεται στο Msgbox, όταν δεν δοθεί έγκυρη
τιμή.
5) ErrorTitle : Ο τίτλος στο Msgbox του
λάθους.
1) MinValue : H minimum
αποδεκτή τιμή
ημερομηνίας(κάτω όριο).
2) MaxValue : H maximum
αποδεκτή τιμή
ημερομηνίας(πάνω όριο).
3) ErrorText : To μήνυμα λάθους που θέλουμε να
εμφανίζεται στο Msgbox, όταν δεν δοθεί έγκυρη
τιμή.
4) ErrorTitle : Ο τίτλος στο Msgbox του
λάθους.
1)
NumericTypeEnum : Απαρίθμηση
των τύπων των αριθμητικών δεδομένων:
ShortType
IntegerType
LongType
SingleType
DoubleType
Προσθέστε στο ToolBox της VB.NET το InputControls και χρησιμοποιήστε το ελεύθερα στις εφαρμογές σας. Το assembly αρχείο InputControls.dll
θα το βρείτε στο φάκελο bin. Μόλις το προσθέσετε στο toolbox, θα δείτε να εμφανίζονται τα 3 textboxes : AlphabeticBox, NumericBox και DateBox.
===================================================================================
Αν στα References του project δείγματος χρήσης εμφανίζει με κίτρινο θαυμαστικό το inputcontrols τότε πρέπει να ενημερώσετε το Reference Path του project ώστε να ψάχνει στο φάκελο που έχετε βάλει το dll του control.
1) Στο Solution Explorer κάντε δεξί κλικ στο project και επιλέξτε Properties.
2) Στο παράθυρο ιδιοτήτων του project που ανοίγει, πηγαίνετε στο τμήμα Common Properties και Reference Path.
3) Δεξιά, πατήστε το browse button για να βρείτε το Folder όπου βρίσκεται το assembly dll του control στον δικός σας υπολογιστή.
4) Πατήστε το button Update. Σώστε το project, κλείστε το και ξανανοίξετέ το. Τώρα, πρέπει να εμφανίζονται όλα κανονικά.
Για οποιεσδήποτε παρατηρήσεις στείλτε e-mail στην παρακάτω διεύθυνση.
mouratx@yahoo.com
Χρήστος Μουρατίδης