Nou de titel zegt het eigenlijk al maar ik zal het met een klein stukje code proberen te duiden. Ik zoek in een collectie naar een aantal klanten. Elke klant is een object (Customer) en de collectie is een List<Customer>. De class ziet er vereenvoudigd zo uit:
Na het zoeken stel een Collectie (List<Customer>) samen van de resulaten wil ik deze koppelen aan de datagridview in mijn form.
Zoals je kan zien, heb ik ook geprobeert of het "handmatig" vullen van de bindingsource ook werkt maar dat had ook geen resultaat. Wat ik dus wil een een collectie koppelen aan de datagridview en dan een aantal kolommen defineren, waarbij ik de kolom wil koppelen aan een property van het object Customer.
Ik heb msdn, codeproject en GoT al afgezocht en ben nu al twee avonden kwijt. De collectie wordt prima gevuld, want tijdens het debuggen zie ik gewoon 8 resultaten, en dat klopt ook.
Hieronder een lijstje van gebruikte zaken op o.a. msdn:
http://msdn2.microsoft.com/en-us/library/ms171600.aspx
http://msdn2.microsoft.co....forms.bindingsource.aspx
http://msdn2.microsoft.com/en-us/library/y0wfd4yz.aspx
\[C# / WinForms] DataGridView refresht niet *
http://www.google.com/sea...official&client=firefox-a
Hoe los ik dit op en/of hoe kan ik achterhalen waarom de binding niet gebeurt?
C#:
1
2
3
4
5
6
7
8
9
10
11
12
| public class Customer { public int customerID; // Personal public string christianname; public string initials; public string tussenvoegsel; public string familyname; //etc... } |
Na het zoeken stel een Collectie (List<Customer>) samen van de resulaten wil ik deze koppelen aan de datagridview in mijn form.
C#:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
| List<Customer> searchResult; searchResult = doSomeSearch(); dataGridView2.Columns.Clear(); BindingSource bindingSourceCustomers1 = new BindingSource(); bindingSourceCustomers1.DataSource = searchResult; /* foreach (Customer c in searchResult) { bindingSourceCustomers1.Add(c); } */ dataGridView2.DataSource = bindingSourceCustomers1; dataGridView2.AutoGenerateColumns = false; DataGridViewColumn Column; Column = new DataGridViewTextBoxColumn(); Column.HeaderText = "Achternaam"; Column.DataPropertyName = "familyname"; Column.Name = "familiyname"; Column.AutoSizeMode = DataGridViewAutoSizeColumnMode.Fill; dataGridView2.Columns.Add(Column); |
Zoals je kan zien, heb ik ook geprobeert of het "handmatig" vullen van de bindingsource ook werkt maar dat had ook geen resultaat. Wat ik dus wil een een collectie koppelen aan de datagridview en dan een aantal kolommen defineren, waarbij ik de kolom wil koppelen aan een property van het object Customer.
Ik heb msdn, codeproject en GoT al afgezocht en ben nu al twee avonden kwijt. De collectie wordt prima gevuld, want tijdens het debuggen zie ik gewoon 8 resultaten, en dat klopt ook.
Hieronder een lijstje van gebruikte zaken op o.a. msdn:
http://msdn2.microsoft.com/en-us/library/ms171600.aspx
http://msdn2.microsoft.co....forms.bindingsource.aspx
http://msdn2.microsoft.com/en-us/library/y0wfd4yz.aspx
\[C# / WinForms] DataGridView refresht niet *
http://www.google.com/sea...official&client=firefox-a
Hoe los ik dit op en/of hoe kan ik achterhalen waarom de binding niet gebeurt?
buit is binnen sukkel