2011-11-04 15 views
7

Próbuję ustawić sortowanie w DataGridView. Sortowanie powinno być automatyczne po kliknięciu nagłówków kolumn, ale nie działa. Co ja robię źle?Sposób korzystania z SortMode w DataGridView

private void LoadDummyData() 
{ 
    List<AddressBookDummy> list = new List<AddressBookDummy>(); 
    list.Add(new AddressBookDummy { Name = "Newman, Alfred", Type = "CAR" }); 
    list.Add(new AddressBookDummy { Name = "Skywalker, Luke", Type = "SUP" }); 
    list.Add(new AddressBookDummy { Name = "Skywalker, Leia", Type = "BEN" }); 

    addressBookGrid.DataSource = list; 
} 

private void InitializeGrid() 
{ 
    addressBookGrid.RowHeadersVisible = false; 
    addressBookGrid.ScrollBars = ScrollBars.Vertical; 
    addressBookGrid.SelectionMode = DataGridViewSelectionMode.FullRowSelect; 
    addressBookGrid.Columns[0].SortMode = DataGridViewColumnSortMode.Automatic; 
    addressBookGrid.Columns[1].SortMode = DataGridViewColumnSortMode.Automatic; 
} 
+0

możliwe duplikat [Jak mogę posortować kolumnę z danymi w DataGridView nagłówek kolumny kliknięcia ?] (http://stackoverflow.com/questions/6228340/how-do-i-sorta-a-databound-column-in-a-datagridview-on-a-column-header-click) –

+0

Wow, drugi raz to dokładne pytanie zostało opublikowane w ciągu ostatnich kilku godzin. Istnieje funkcja wyszukiwania, ludzie. –

+0

Sorry Charles. Ta odpowiedź nie pojawiła się, gdy zadawałem pytanie. –

Odpowiedz

6

Trzeba wiązać się z listy, która implementuje sortowania here's an example

Podsumowanie:

public Form1() 
{ 
InitializeComponent(); 

SortableBindingList<person> persons = new SortableBindingList<person>(); 
persons.Add(new Person(1, "timvw", new DateTime(1980, 04, 30))); 
persons.Add(new Person(2, "John Doe", DateTime.Now)); 

this.dataGridView1.AutoGenerateColumns = false; 
this.ColumnId.DataPropertyName = "Id"; 
this.ColumnName.DataPropertyName = "Name"; 
this.ColumnBirthday.DataPropertyName = "Birthday"; 
this.dataGridView1.DataSource = persons; 
} 
+0

To działało idealnie. Dzięki. –

+0

Świetnie sprawdziła się przy tworzeniu Mojej Listy do Sortowania. – bulltorious

+0

Czy możesz dodać podsumowanie linku, aby ta odpowiedź stała na własną korzyść bez linku? http://meta.stackexchange.com/q/8231/189763 –

Powiązane problemy