Izveidot kopām ListView panta ListViewGroup)

Kā es teicu vairākas reizes, ListView kontrole ir viena no visvairāk izmanto, izstrādājot programmu Visual Basic. Net.

Šodien es gribu parādīt veidu, kā iegūt vairāk no šīs kontroles, kā arī atstāt daudz pievilcīgāku, radot grupām un par fona attēlu izmantošanu.

Piemēram mums ir nepieciešams: veidlapu un ListView. Vajadzētu izskatīties pēc attēla:

Parādīt rezultātus, mums ir nepieciešams datus, un par to es izveidojis DataTable atmiņā un piepilda to ar četriem ierakstiem. Lauki ir Vārds, Uzvārds, telefons un atrašanās vieta.

Es gribu parādīt šajā piemērā ar cilvēku sarakstu ar to nosaukumiem, tālruņa numuriem grupēti pēc atrašanās vietas. Vispirms analizēt šo kodu, ja jūs vēlaties to izmēģināt, lai redzētu, kā tā darbojas, un tad es ņemšu izskaidrot dažas lietas.

 Dim dt kā jaunam DataTable
 dt.Columns.Add ("nosaukums")
 dt.Columns.Add ("nosaukums")
 dt.Columns.Add ("Phone")
 dt.Columns.Add ("pilsēta")

 Dim dr Kā DataRow = dt.NewRow

 dr ("nosaukums") = "Jānis"
 dr ("nosaukums") = "Smits"
 dr ("Phone") = "4587-9546"
 dr ("Location") = "Moron"
 dt.Rows.Add (DR)

 dr = dt.NewRow
 dr ("nosaukums") = "Marcelo"
 dr ("nosaukums") = "Roland"
 dr ("Phone") = "7415-8945"
 dr ("Location") = "Moron"
 dt.Rows.Add (DR)

 dr = dt.NewRow

 dr ("nosaukums") = "Havjers"
 dr ("nosaukums") = "Martinez"
 dr ("Phone") = "4567-9654"
 dr ("Location") = "Castelar"
 dt.Rows.Add (DR)

 dr = dt.NewRow

 dr ("nosaukums") = "Estevan"
 dr ("nosaukums") = "Vazquez"
 dr ("Phone") = "9452-4515"
 dr ("Location") = "Castelar"
 dt.Rows.Add (DR)

 ListView1.FullRowSelect = True
 ListView1.MultiSelect = False

 Dim kā String = String.Empty grupoActual

 Dim g kā jaunam ListViewGroup

 Katram r Kā DataRow In dt.Rows

 Ja r ("pilsēta"). ToString <> Tad grupoActual
 Jaunais ListViewGroup g = (r ("pilsēta"). ToString)
 grupoActual = r ("pilsēta"). toString
 ListView1.Groups.Add (g)
 Beigas Ja

 Dim pozīcijā kā jaunās ListViewItem ("")
 item.SubItems.Add (r ("nosaukums"). toString)
 item.SubItems.Add (r ("Uzvārds"). toString)
 item.SubItems.Add (r ("Phone"). toString)
 item.Group = g

 ListView1.Items.Add (vienība)
 Nākamais

Nu, pirmās līnijas attiecas uz no DataTable izveides un aizpildīšanas datu un tas nesniegs komentārus. Koncentrēties uz to, kā aizpildīt ListView.

Vispirms es izveidoju katram cilpa ar visu tabulas ierakstiem man ir atmiņā. Tad es varu izveidot teksta mainīgo panta grupoActual), lai saglabātu grupas nosaukumu (pēdējais I pievienotās ListView) un es arī domāju objektu ListViewGroup (g). Pirmais, ko es darīt, lai sāktu nosaka uzskaite ir piešķirt vietu (kas ir lauks es gribu strādāt kā grupa), lai ListView1 un saglabāt šos datus uz mainīgo grupoActual nākotnes salīdzinājumu. Tad iekasēt ListViewItem kā vienmēr atšķirībā norādīja, ka šis postenis pieder pie grupas "g", pievieno vienumu uz ListView1 un gatavs. Iet caur citiem reģistriem un veikt salīdzinājumu tikai izveidot jaunu grupu, kad no pilsētas mainās.

Rezultāts izskatīsies:

Tagad viss izskatās jaukāk, es ieteiktu radot attēlu fona. Es domāju, es teicu, ka es gribētu Photoshop, bet jūs varat izmantot jebkuru attēlu redaktoru, lai izveidotu JPG izmantošanai fonā. Ievērojiet, ka krāsas nav jābūt ļoti spēcīgs, jo tas ir difilcultará nolasīt datus.

Šeit es varu atstāt savu tēlu, es izmantot šajā piemērā:

Lai to izmantotu tikai no šīs ListView īpašībām, atrast BackgroundImage un pēc tam pievienot attēlu, kā parādīts zemāk:

un jums ir arī mainīt īpašumu True un gatavs BackgroundImageTiled. Es parādīt gala rezultātu:

Tas ir tas, es ceru, ka viņi kalpo.

11 Atbildes uz "Create a grupas ListView panta ListViewGroup)"

  1. Informācija Bitacoras.com ...

    Līmenis Bitacoras.com: Kā es teicu vairākas reizes, ListView kontrole ir viena no visvairāk izmanto, izstrādājot programmu Visual Basic NET.. Šodien es gribu parādīt veidu, kā iegūt vairāk no šī kontrole un arī Dej ...

  2. Cēzars teica:

    Lielisks piemērs cita veida izmantošanas ListView.

    Mia jautājums un es meklēja visur pirms jautā, kā lai kopu izdrukāt šo ListView.

    paldies

  3. Emilio Rafael Garcia Rios saka:

    Hei, kā par mans jautājums ir ...
    Un kā tas ir staigāt ListView grupu ar grupu?

  4. anonīms saka:

    Sveiki, es gribēju zināt, kā to izdarīt, lai izdzēstu izvēlēto objektu ListView.
    Paldies.

  5. Alejandro saka:

    šis ir ļoti labs piemērs, es esmu liekot praksē, bet man ir problēma piemēram: manas grupas Lietotāju modulis.
    Mans jautājums ir: Kā es varu rādīt otro grupu?
    Piemēram, savā piemērā jūs pēc jūsu item.group = g
    Kas notiks, ja es arī gribu, lai parādītu grupas H kolonnas subitems?
    Kaulu parādīt man lietotājs (grupai), moduļa (citā grupā), bet pārējais teksts.
    Es novērtējam Jūsu laiku un laba vēlējumiem.

  6. christian saka:

    kā es varu savienot ListView ar acces ¿?
    Es varu parādīt, ka dati ailēs BD

  7. Li saka:

    Pēdējā rindā = listView1.Items.Add (vienība) man šādu kļūdu:

    Nevar pievienot vai ievietot objektu "vairāk nekā vienā vietā. Jānoņem no tās pašreizējās atrašanās vietas vai klonēt to.
    Parametra nosaukums: vienums.

    Es esmu testēšana Net 2008, jo šī kļūda ir.?

  8. Federico saka:

    Sorry es vb.NET zonde 2008.gadā un nedarbojas.

    • Elīsa saka:

      Federiko: Kad es šo amatu, kā piemēru es, izmantojot Visual Studio 2008, un viņi strādā. Es ieteiktu jums izmēģināt vēlreiz pievērst uzmanību pasākumiem.

      Veiksmi.

  9. Jorge saka:

    Labrīt, apsveikumi! gribēja zināt, kā grupas šūnām padarītu ListView, un ka šī kontrole nav sapludināšanas īpašumu. Gaida, lai iegūtu man paskaidrot.

    =)

  10. Carlos saka:

    Sveiki labs ieguldījums pasniedz man labi,
    bet es zinu, vai varētu man palīdzēt atrisināt katru grupu, lai īstenotu projektu man izveidojās, pateicoties
    iepriekš caur

Komentēt