Diferența dintre ListView și DataGrid în WPF? (Programare, .Net, Wpf, Listview, Gridview, Datagrid)

MangoTable a intrebat.

Trebuie să recuperez câteva întrebări din baza de date și să le afișez dinamic pe ecranul utilizatorului. De asemenea, trebuie să adaug câteva controale în coloanele vizualizării grid, practic o întrebare și o căsuță de introducere a unui răspuns.

Vă rog să-mi sugerați pe care dintre ele ar trebui să o folosesc? ListView sau DataGrid?

Comentarii

  • Este vorba de WPF sau WinForms? –  > Por Goblin.
  • posibil duplicat de Listview vs datagrid –  > Por Sevenate.
2 răspunsuri
Yogesh

Ei bine, în WPF diferența dintre ListView și DataGrid este doar una. Editare. Dacă aveți nevoie de editare, utilizați DataGrid, altfel folosiți ListView. Puteți edita în ListView de asemenea, dar este mai ușor și să construiți în DataGrid. Altfel, orice poate fi afișat în DataGrid, poate fi afișat în ListView.

Un lucru care DataGrid susține și ListView nu suportă (din start) este generarea automată a coloanelor.

Puteți citi acest articol pe CodeProject pentru o mai bună înțelegere a DataGrid și, de asemenea, despre diferențele majore dintre ListView și DataGrid.

Comentarii

  • Există cu siguranță mai multe diferențe. Una dintre ele este dimensionarea coloanelor. În datagrid puteți întinde coloana pentru a umple dimensiunea grilei, în listview nu puteți. Din câte știu, ListView a fost introdus în WPF 3.5, dar a fost înlocuit ulterior cu DataGrid, dar este încă prezent din motive de compatibilitate –  > Por Liero.
  • Și sortarea coloanelor. –  > Por Ricky.
  • Merită menționat faptul că editarea în DataGrid poate fi dezactivată folosind IsReadOnly="True" –  > Por Chylomicron.
  • Știe cineva care este mai rapid atunci când se utilizează modul virtual pentru o cantitate mare de rânduri? –  > Por Paul McCarthy.
  • ListView nu suportă lățimea coloanei în procente. –  > Por Joke Huang.
gideon

Nu sunt un expert WPF, dar în ceea ce privește doar controalele în sine.

Când vă gândiți la ListView, gândiți-vă la Windows Explorer, panoul în care vedeți toate fișierele, acesta este un ListView.

Când te gândești la o bază de date, este de obicei (am spus, de obicei) o grilă de date, se trece cu mouse-ul peste gridview și citiți descrierea.

Unele motive foarte evidente pentru care ați dori o grilă de vizualizare sunt faptul că este direct editabilă. Puteți cere utilizatorului să introducă întrebările și răspunsurile în ea. Rețineți că, deoarece ListViewItem este un Content Control, îl puteți personaliza cu ușurință, cum ar fi acest articol o face.

De asemenea, vedeți dacă acest Tutorial GridView vă ajută.

Nu ați descris prea mult modul în care aveți nevoie de interfață, dar vă puteți juca și puteți face tot ce doriți.

Ai putea chiar să faci un Control utilizator pentru o [Întrebare + Casetă de introducere a răspunsului]. Apoi ai putea folosi un StackPanel (sau chiar un listview) pentru a le enumera.

Sper că v-a ajutat.