Listview ... "Un prieten de-inseparabil"

În fiecare dezvoltare este aproape inevitabil ca eu nu trebuie să utilizaţi un listview. Deci, eu consider că un control foarte util. La prima costa un pic pentru a înţelege funcţionarea sa şi a durat mai multe luni pentru a realiza pe deplin potenţialul ... dar din moment ce am înţeles noi sunt inseparabile.

Definiţie
Pentru a defini un simplu spune o listview este o colecţie a lui ListViewItem

În scopul de a popula o listview trebuie să creeze mai întâi un obiect ListViewItem (sau mai mult) şi apoi adaugă obiecte de listview folosind metoda Add a elementelor de proprietate.


 "Ar trebui să aibă un formular numit Form1 WinForm
 "Cu un control listview numit ListView1

 Ca element Dim ListViewItem
 = element nou ListViewItem ("Clientul pe locul 1")
 ListView1.Items.Add (element)

 "Deci, putem umple folosind o buclă pentru / următor
 Pentru i ca integer = 1 la 10
 Ca element Dim ListViewItem
 = element nou ListViewItem ("Client" & I)
 ListView1.Items.Add (element)
 Următor

Un ListViewItem poate stoca date diferite, cum ar fi nume, trecut,
ADRESA, etc.

Acest lucru necesită adăugarea (adăuga) pentru fiecare ListViewItem de subitems necesare.


 Ca element Dim ListViewItem
 = element nou ListViewItem ("Nume 1")
 "Acum, aceasta am adăuga un obiect element
 "Sub-element pentru fiecare date suplimentare
 item.SubItems.Add ("Nume 1")
 item.SubItems.Add ("Adresa 1")
 item.SubItems.Add ("Telefon 1")

 "Este doar rămâne pentru a adăuga elementul la comanda
 "ListViewItem lui colecţie de obiecte de
 "ListView1 fel am făcut-o înainte
 ListView1.Items.Add (element)

Un listview are vederi diferite pentru a afişa datele, acestea sunt detalii,
LergeIcon, Lista, SmallIcon si placi de ceramica.

În urma este o descriere a luat de la fiecare dintre ajutorul de Visual Studio:

Detalii Fiecare element apare pe o linie separată cu informaţii mai detaliate
de fiecare element organizat în coloane. Coloana din stânga conţine mult
o pictogramă mică şi o etichetă, iar coloanele ulterioare conţin subitems
specificat de cerere. Coloanele includ un antet, care poate afişa
un titlu de coloană. Utilizatorul poate schimba dimensiunea fiecărui
coloana în timpul rulării.
LargeIcon Fiecare element apare ca o dimensiune de icoana de mai jos, care conţine o
etichetă.
Listă Fiecare element apare ca un mic icon în dreptul de care conţine o etichetă.
Elementele sunt aranjate în coloane, fără antet.
SmallIcon Fiecare element apare ca un mic icon în dreptul de care conţine o etichetă.
Ţiglă Fiecare element apare ca o dimensiune icoana etichetat de e element de
informaţii subelement situat pe partea dreapta. Cererea specifică informaţiile
subelement de care apare. Acest punct de vedere este disponibil numai în Windows XP şi
familia Windows Server 2003. În sistemele de operare mai vechi, această valoare
este ignorat şi de control ListView este prezentat în vederea
LargeIcon

.

Pentru a vizualiza datele atunci când vom folosi de vizualizare "Detalii" Trebuie să creăm prima
coloane listview de acord cu suma de elemente şi subitems pe care le avem.


 COLUMN1 Dim Ca System.Windows.Forms.ColumnHeader nou
 COLUMN2 Dim Ca System.Windows.Forms.ColumnHeader nou

 Column3 Dim Ca System.Windows.Forms.ColumnHeader nou
 Dim Ca System.Windows.Forms.ColumnHeader New column4

 column1.Text = "Nume"

 column2.Text = "Last Name"
 column3.Text = "Adresa"
 column4.Text = "Telefon"

 column1.Width = 40
 column2.Width = 30
 column3.Width = 30
 column4.Width = 20

 "Este întotdeauna important să vă asiguraţi că nu există
 "Coloane şi este cel mai bine este să le ştergeţi înainte de a
 "Adăugaţi coloane noi

 ListView1.Columns.Clear ()

 "Acum, adăugaţi coloane noi
 ListView1.Columns.Add (COLUMN1)
 ListView1.Columns.Add (COLUMN2)
 ListView1.Columns.Add (column3)
 ListView1.Columns.Add (column4)

 ListView1.View = View.Details

Setările coloană poate fi, de asemenea, face în modul de proiectare de la
coloane de proprietate, aceasta nu e deschis de la un asistent care vă administraţi
listview coloane.
Proprietăţi

Există unele proprietăţi foarte utile, care nu poate să nu ştie, atunci
mentionez ca eu folosesc cel mai mult. Proprietăţile rămase sunt lăsate să se
capaciddad exercita dumneavoastră de cercetare.

FullRowSelect Setarea acestei proprietăţi întotdeauna o adevărată şi funcţia sa este de a evidenţia întreaga linie atunci când
De lucru în vizualizarea Detalii.
MultiSelect Permite (adevărat) sau dezactiva (fals) selecţie de elemente multiple în cadrul
listview.
HideSelection În cazul în care proprietatea este adevarat ca nu va vedea că atunci când elementul este selectat de control
pierde concentrarea. În unele cazuri, este important de a dezactiva (fals), această opţiune
pentru a urmări elementul activ.

32 Responses to "listview ..." Un prieten inseparabil ""

  1. quispe copilul Isus Rodriguez spune:

    Bună ziua doctor:
    prima sper sa nu deranjez, am Q mă ajute în ceea ce priveşte modul de a umple listview, folosiţi întotdeauna DataGridView .. bine adevărul şi nu-mi umple listview C, după care le-au încercat Q nu este la fel ... desigur, vreau să-mi umple listview cu înregistrare întors dintr-un tabel SQLServer utilizând o interogare de exemplu "SELECT ID-ul, descrierea de la TablaPaises"

    ar dori să ştiu, de asemenea, cum să adăugaţi o înregistrare într-un Q textbox am listview meu, dar fara a afecta baza mea de date, şi atunci când faceţi clic pe buton pentru a înregistra de la fereastra mea eu lucrez registrul q adauga la listview-mi fi acum adăugate în cazul în care baza mea de date ...

    Sper că pot ajuta .. şi de a vă mulţumi pentru ajutorul dvs. .. şi contribuţia sa ...

    atenţia. Isus Rodriguez copil quispe

  2. quispe copilul Isus Rodriguez spune:

    Vă mulţumim pentru răspunsul dumneavoastră dr. .. dacă am citit articol, şi ma ajutat foarte mult .. Eu datorez de timp .. ca de obicei .. fiind ajutat cu probleme, cum ar fi acestea şi pentru a ajuta cu ceea ce ştim .. face de cunoştinţe în creştere şi mai mult pentru a afla lucruri noi .. de proiectare şi multe altele ...

    datorită medic, problemă rezolvată

  3. Jimmy Saenz spune:

    astfel, în primul rând, felicitări pe blog-ul dvs., am făcut mai mult. Mi-ar place de tine pentru a răspunde la o problemă în cazul în care nu am probleme prea mult, din moment ce ai o comandă mare de control listview, eu fac un jucător vbnet. Eu folosesc listview pentru toate panourile (redare, playlist-uri, filtre ...), în caz de căutare, o poziţie într-un listview toate melodiile care au fost adăugate la baza de date, forma este un text în care introduceţi cântec pentru a găsi şi apăsaţi butonul de căutare, eu folosesc un FindItemWithText pentru a căuta .. şi toate bune, într-un MsgBox, imprima piesa este sau nu, perooo favoarea am nevoie de la tine este că vreau să fac un accent în elementul listview nu a fost găsit place pentru a adăuga elemente index, pur şi simplu utiliza: listview.items.add (CancionesEncontradas)
    apoi, dacă puteţi ajuta va rugam sa fi de aşteptare pentru un respuesta.gracias promptă

  4. Jimmy Saenz spune:

    buenisimo mesaj, simplu şi interesant, şi de a rezolva, datorita mici probleme. va comenta pe postul anterior fac mic proiect de un jucător, aş dori am fost în contact pentru o interogare mic, dacă poţi să mă adăuga la persoane de contact i-ar fi mare, o? dar, în afară de lapte praf integral de control între VB net nu este un alt mod de joc mp3, să nu depindă de biblioteca WMP? de aşteptare pentru răspunsul dumneavoastră rapid din nou, mulţumiri în avans

  5. quispe copilul Isus Rodriguez spune:

    Bună ziua medicului.

    folosind din nou ajutorul lor, aş dori să ştiu diferenţa dintre DataGridView şi listview.
    şi de control care a doi foarte ma sfătuit să folosească pentru gestionarea a mai mult de 1000 de înregistrări pe tabelul de la o bază de date ..

    Eu datorez dinainte.

    feliciandole şi din nou, pentru cele mai mari contributii ...

  6. Elisei spune:

    Am recomandăm să citiţi acest post care cred ca va fi de mare ajutor:

    http://social.msdn.microsoft.com/Forums/es-ES/dotnetes/thread/faea77af-edec-41a9-970f-cedb07542e73

  7. deVIShop spune:

    saludoss:
    Am citit o multime listview mâner Q

    Am un QE dudaa a avut timp de aproape trei zile şi nu a putut rezolva q este

    Cum se calculeaza intervalul de data la care sunt într-o coloană într-o listview?

    ---------------

    Descriere:
    programa un DateTimePicker pentru fiecare dată q Alegeţi o dată vor fi adăugate într-o coloană de vedere al listei ..

    Întrebarea este Q:
    Odată adăugat listview nu găsi o modalitate de a obţine intervalul de prima dată cu al doilea, a doua cu a treia am aşa mai departe ...

    talves va prezenta un subiect cum ar fi modul de a calcula datele de q au fost adăugate într-o listview ...
    Dacă aveţi orice recomandare sau va aştepta răspunsul dumneavoastră consego xD

    un pic mai mult descriptiv al problemei am în acest q web ceva :::

    http://www.forosdelweb.com/f79/sumar-fechas-listview-711801/~~V

    GRACIASSSSSSSSSSSS .....

  8. Angelandro Mare spune:

    o întrebare despre postul tau,
    Cum de a adăuga 2 produs pentru listview mea cu proprietatea egal cu vedere largeicons şi mi-ar placea, pentru fiecare produs a avut o imagine diferita?

  9. Lopera Nicko spune:

    Salutari,

    agredezco cooperare în avans. Întrebarea mea este următoarea: dacă am agredados deja mai multe articole la un listview. nici una dintre acestea este selectat (deci nu au fost clic pe el).
    cum ştiu că listview cod nu are nici un element selectat?

    listview.listitems ceva de genul (i). Selectaţi în VB 6.0

    multe mulţumiri

  10. Sauro pisica spune:

    ca avem un prieten în comun : D doar în vb.net 2008 nu pot găsi toate opţiunile (proprietăţi), care au fost utile pentru a-mi stabili ... va avea aceeasi capacitate ca a VB 6?

    • Elisei spune:

      Hi

      Am comentat că noul ListView de control Visual Basic. Net expune cele mai multe dintre proprietăţile şi metodele care au avut în Visual Basic 6 şi trebuie doar să ia în considerare unele nume s-au schimbat.
      ListView de control expune doar câteva proprietăţi noi. Acest grup include de activare (a se specifica în cazul în care elementele sunt activate cu unul sau două clicuri), HeaderStyle (în cazul în care aveţi posibilitatea să faceţi clic pe titlurile de coloane) scrollable (care urmează să fie definit ca fiind false pentru a împiedica mişcarea), LargeImageList (ImageList de control folosite imagini pentru modul de icoane de mare) şi smallImageList (controlul ImageList utilizate în toate celelalte moduri). Reţineţi că punctul de vedere proprietatea defineşte modul de afişare, la fel ca în Visual Basic 6, dar raportul a fost redenumit în aşa fel încât ceea ce priveşte detaliile.

      Sper că am clarificat unele îndoieli.

      În ceea ce priveşte

  11. Gabriel spune:

    Buna ziua Sper să pot răspunde ...
    Am programat o listview a carge-mi o listă de clienţi direct din baza de date, problema mea este ca eu vreau să selectaţi clientului, cu opţiunea de FullRowSelect listview şi de a reveni pentru a obţine datele din rândul selectat, astfel înapoi la crea un obiect "client" datele din listview, aşa idk dacă vor înţelege cum am explicat, vă mulţumesc foarte mult pentru tot, multumesc pentru timpul dumneavoastră.

  12. Scala spune:

    Hi Elisei, I primul vreau să vă felicit pe blog .. este foarte bun şi mi-a servit bine.
    Acum fac o interogare:
    Având în vedere primul exemplu
    = element nou ListViewItem ("Nume 1")
    "Acum, aceasta am adăuga un obiect element
    "Sub-element pentru fiecare date suplimentare
    item.SubItems.Add ("Nume 1")
    item.SubItems.Add ("Adresa 1")
    item.SubItems.Add ("Telefon 1")
    "Este doar rămâne pentru a adăuga elementul la comanda
    "ListViewItem lui colecţie de obiecte de
    "ListView1 fel am făcut-o înainte
    ListView1.Items.Add (element)

    Cum am putea face pentru a trece de la subitems text diferit??

    Salutări şi mulţumiri

    • Scala spune:

      Şi a rezolva aceasta, chiar din ghid pentru a schimba listview.

      În ceea ce priveşte

    • Elisei spune:

      pentru a se referi la subitems diferite folosesc doar un index cum am arata mai jos:

      Item.subitems TextBox1.Text = (0). De text
      textBox2.Text item.subitems = (1). de text
      textBox3.Text item.subitems = (2). de text

      Noroc

  13. Martin spune:

    Am nevoie de ajutor, cu o întrebare pe care am mult timp în urmă şi nimeni nu ar putea rezolva. Poziţionaţi o bază de date completă într-un listview, problema este ca eu sunt adăugarea de aceste date sunt încărcate la sfârşitul anului şi de acolo nu vine un moment arata ca pot face pentru a menţine bara de derulare la sfârşitul pentru a vedea ultimul lucru pe care am adăugarea.
    Din deja mulţumesc foarte mult

  14. Da Silva a declarat în luna iulie:

    Prietenul Am o problemă. Repornirea sistemul meu de operare sau a reformat computerul meu pe sistemul meu, nu pot vedea listview de cod de programare. Sunt folosind Visual Net 2003.
    Pentru a oferi informaţii un pic mai mult, programul a fost creat pentru prima dată în VB4 la VB6, iar acum au migrat de a lucra în Visual 2003 Net. Am nevoie pentru a instala pentru a vedea codul sursă în listview .. -

  15. kiraleo spune:

    olahe mult căutat pe listview şi aş dori să mă ajute cu trecerea la un element următor într-o listview
    ca o listview.nextitem Paar funcţie de codul ca una din cele două butoane pentru a face următoarea şi un precedent

    Apreciez ajutorul tau

  16. Padarinis spune:

    Bine ai venit acolo a fost VB.60 posibilitatea de a pune o cheie şi a fost ascuns. Ce se întâmplă este că trebuie să umple un listview cu numerotate de la 1 la 10, dar ID-ul de fiecare client trebuie să fie ascunse. Deci, atunci când deschideţi un listview. Puero fereastră INA pentru a încărca datele de la care ar fi ascunse dela ID-ul. AH. şi, de asemenea, ar putea pune icoane în fiecare rând ..

  17. gabox spune:

    Hi

    Foarte bine pe blog-ul dvs. are, de asemenea, o mulţime de estetică ... care este rară în dezvoltatorii ;)
    Acum, întrebarea mea este aceasta:
    Orice exemplu, faptul că umple un listview de la un hashtable care conţine mai multe instanţe ale unei clase specifice? Eu ştiu că folosesc un foreach, dar atunci când rulează, listview este "gol". Nu ştiu dacă l-am exprima.
    Vă mulţumesc foarte mult pentru răspunsul dumneavoastră.

    • gabox spune:

      Hi

      Despre problema mea am clarificat faptul că am descoperit cum să facem să funcţioneze, doar că eu fac in afara tabcontrol care a fost listview, pentru că am fost într-o tabcontrol şi ceea ce nu va funcţiona?
      Vă mulţumesc foarte mult pentru orice raspuns.

  18. Miguel spune:

    Alo
    Sper ca cineva poate sa ma ajute.
    problema mea cu scopul de listă este că voi trimite informaţii prin intermediul codului, deoarece pot genera cheile şi datele de produsele mele, cu un pic de informaţii care îmi dă de utilizator şi a datelor, după cele din listview trimite-le la o bază de date, până când am totul aici, dar, de obicei, bine înainte de a salva utilizatorul trebuie să modifice datele în subitems sunt şi ce pot face este de a modifica sub-elemente DATA cineva mă poate ajuta pentru că panica şi nu pot găsi soluţie la îndemână, mulţumită

  19. Ioan spune:

    Buna ziua,

    O interogare, cum am putea spune atunci cand scrool activat orizontală o listview în Vb net.

    În ceea ce priveşte

    Juan Carlos

  20. Diana spune:

    Buna ziua,

    Aş dori să ştiu cum de a posta imagini într-un listview, adică introdus în coloane aduse de la o bază de date de către setul de date, dar vreau ca atunci cand aparezce de date, cum ar fi numele apare lângă imaginea pe care persoana.

    Eu va aprecia mult ajutorul dvs.

  21. Alfredo spune:

    Aş dori să ştiu cum pentru a posta un ListView cu un tabel Access, un sencillito exemplu, deoarece nu există nici o cale să-l.
    Mulţumiri

  22. maicol retamal spune:

    Dr. val Vreau sa fac o interogare
    cum pot obţine un element sau o arots ejmplo listwiev q şi apoi scade elementul subtotal la totalul q este o etichetă ce vânzările Totan tieens în cazul în care acest răspuns ar fi foarte util vă mulţumesc foarte mult

  23. maicol retamal spune:

    Adica mai bine jkajkajk bun
    ce se intampla cu mine, nu pot scădea elementul subtotală în casa mea de discuri listwiev numit total_venta vreau să spun mai bine.
    în listwiev nu pot elimina produs
    q Am scade produsul pe această etichetă

    în avans, vă mulţumesc foarte mult

Comentariu