Προς το περιεχόμενο

[VB.NET] ListView Columns


JohnL

Προτεινόμενες αναρτήσεις

Δημοσ.

Φτιάχνω ένα πρόγραμμα το οποίο θα περιέχει ένα ListView με διάφορες στήλες. Τα items του ListView θα περιέχουν subitems (που θα εμφανίζονται προφανώς στις διάφορες στήλες).

 

Το πρόβλημα είναι ότι δεν ξέρω με ποιά σειρά θα έρχονται τα δεδομένα των subitems, και θα πρέπει να τα περνάω στη σωστή στήλη κάθε φορά. Όπως "έρχονται" (ας πούμε ότι) ξέρω το όνομα της στήλης στην οποία ανήκουν. Πώς μπορώ να τα περάσω στην αντίστοιχη σειρά ώστε να εμφανιστούν κάτω από την σωστή στήλη?:confused:

 

Ελπίζω να γίνομαι κατανοητός...

Δημοσ.
Ελπίζω να γίνομαι κατανοητός...

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

Δημοσ.
Καλά τι ανωμαλία στη ροή των δεδομένων είναι αυτή;;; !!!

Τελείως άκυρο! ;)

 

Τα αρχεία δεν τα φτιάχνει το δικό μου πρόγραμμα, αλλά είναι ήδη έτοιμα, από διάφορα άλλα προγράμματα. Δεν ξέρω αν έχεις ασχοληθεί καθόλου με ID3v2, αλλά κι εκεί τα διάφορα tags δεν είναι απαραίτητο να είναι με κάποια συγκεκριμένη σειρά...

 

Εξαρτάται πώς το βλέπεις πάντως, γιατί μπορεί να θεωρηθεί και ευελιξία.

Δημοσ.
Από εμένα με λίγη δυσκολία, αν θέλεις προσπάθησε να εξηγήσεις καλήτερα.

 

Λοιπόν... Έχω κάποια αρχεία τα οποία περιέχουν επιπρόσθετες πληροφορίες. Οι πληροφορίες αυτές είναι σε μορφή tags, αντίστοιχα με τα tags των mp3 (ID3v2).

 

Έχω ένα ListView (σε εμφάνιση Details), στο οποίο θέλω να εμφανίζονται οι διάφορες πληροφορίες που περιέχουν τα αρχεία. Αν ξέρεις, τα ListViewItems μπορούν να έχουν Subitems. Αυτά θα εμφανίζονται στις υπόλοιπες Columns (στήλες) του ListView.

 

Εγώ θέλω να προσθέσω ένα Subitem σε συγκεκριμένη θέση στο Collection Subitems, ωστε ας πούμε να εμφανιστεί στην 4η στήλη. Γίνεται να το κάνω αυτό?

 

 

Sample Code, (χωρίς άμεση σχέση)

>
Dim newItem As New ListViewItem
newItem.Text = Filename
newItem.Subitems.Add(tag.Name)

Δημοσ.
Τα αρχεία δεν τα φτιάχνει το δικό μου πρόγραμμα, αλλά είναι ήδη έτοιμα, από διάφορα άλλα προγράμματα. Δεν ξέρω αν έχεις ασχοληθεί καθόλου με ID3v2, αλλά κι εκεί τα διάφορα tags δεν είναι απαραίτητο να είναι με κάποια συγκεκριμένη σειρά...

 

Εξαρτάται πώς το βλέπεις πάντως, γιατί μπορεί να θεωρηθεί και ευελιξία.

 

Με ID3v2 δεν έχω ασχοληθεί. Μόνο με τη version 1 προς το παρόν, αλλά θέλω να χρησιμοποιήσω τη βιβλιοθήκη για να μετονομάζω και τα ID3v2 tags των mp3s μου. Τώρα, όσον αφορά στο πρόβλημά σου, αν θες να το βάλεις σε συγκεκριμένη στήλη, φυσικά και γίνεται ρε συ. ΕΠειδή όμως θα γυρίσω αργά σπίτι, θα σου στείλω αύριο πρωί τον κώδικα από το δικό μου πρόγραμμα... Αν θυμάμαι καλά, πρέπει να έχω κάνει κάτι αντίστοιχο.

Μόνο που εγώ παίζω σε VC++.NET (managed components),αλλά η μετατροπή θα είναι εύκολη, σιγά!

Δημοσ.

[offtopic] Το ID3v2 είναι αρκετά πιο περίπλοκο. Είχα αρχίσει να φτιαχνω από το 0 κάτι παλιότερα, αλλά το έφτασα μέχρι την ανάγνωση, πριν κουραστώ και το παρατήσω :) [/offtopic]

 

Ξέρει κανείς και πώς γίνεται να κρύβουμε/εμφανίζουμε στήλες δυναμικά? Χωρίς όμως να μεταφέρονται τα περιεχόμενα τους στις άλλες στήλες.

Δημοσ.
[offtopic] Το ID3v2 είναι αρκετά πιο περίπλοκο. Είχα αρχίσει να φτιαχνω από το 0 κάτι παλιότερα, αλλά το έφτασα μέχρι την ανάγνωση, πριν κουραστώ και το παρατήσω :) [/offtopic]

 

Ξέρει κανείς και πώς γίνεται να κρύβουμε/εμφανίζουμε στήλες δυναμικά? Χωρίς όμως να μεταφέρονται τα περιεχόμενα τους στις άλλες στήλες.

 

Απάντηση στο 1ο: Φυσικά και θα χρησιμοποιήσω την έτοιμη βιβλιοθήκη!!! Για μαζοχισμούς είμαστε;;; !!!

 

Απάντηση στο 2ο: Λογικά αν ορίσεις το length της στήλης, θα μπορείς να το αλλάζεις όποτε θες. Άρα length = 0, στήλη πάπαλα κτλ κτλ.

 

Χρόνο για να δω τον κώδικα δε βρήκα δυστυχώς.

Δημοσ.
Απάντηση στο 1ο: Φυσικά και θα χρησιμοποιήσω την έτοιμη βιβλιοθήκη!!! Για μαζοχισμούς είμαστε;;; !!!

 

Εγώ δεν ήθελα να χρησιμοποιήσω μια έτοιμη βιβλιοθήκη, και για να ξέρω πώς δουλεύουν τα ID3 (με τη βιβλιοθήκη δεν ασχολείσαι καθόλου με τη δομή των πληροφοριών), αλλά και επειδή φτιάχνοντας από την αρχή κάτι μπορείς να το βελτιστοποιήσεις όπως θέλεις.

 

Απάντηση στο 2ο: Λογικά αν ορίσεις το length της στήλης, θα μπορείς να το αλλάζεις όποτε θες. Άρα length = 0, στήλη πάπαλα κτλ κτλ.

 

Μάλλον εννοείς το Width της στήλης. Ναι, αυτό είναι το πιο προφανές, όμως αν ο χρήστης πάει να αλλάξει το μέγεθος της προηγούμενης δίπλα στην "κρυμμένη" στήλη, αντίθετα αλλάζει το μέγεθος της "κρυμμένης" και την εμφανίζει.

 

Εγώ ψάχνω για κάτι όπως στον Windows Explorer, που με δεξί κλικ πάνω στα ColumnHeaders, επιλέγεις ποιές θα εμφανίζονται.

Δημοσ.

Χμμμ αν θες να μάθεις, το καταλαβαίνω. Το να κάνεις όμως κάτι καλύτερο δε στέκει. Γιατί δε βοηθάς το άλλο project αν είναι;

Τεσπα, έτσι σκέφτομαι εγώ. Καλύτερα να υπάρχει μια βιβλιοθήκη με "όλες σε μία νοικοκυρεμένες" λειτουργίες, παρά διάσπαρτα.

Τώρα για το 2ο δεν ξέρω αν υπάρχει επιλογή isVisible = True κτλ κτλ.

Ψάξ'το περισσότερο στα properties.

Αρχειοθετημένο

Αυτό το θέμα έχει αρχειοθετηθεί και είναι κλειστό για περαιτέρω απαντήσεις.

  • Δημιουργία νέου...