Morgen,
ich möchte mein listbox einmal mit bindingsource füllen ;
var list = JsonConvert.DeserializeObject<Dictionary<string, Example>>(jsonData)
?? new Dictionary<string, Example>();
// listBox2.DataSource = list.Keys;
listBox2.DataSource = new BindingSource(list, null);
listBox2.DisplayMember = "Key";
listBox2.ValueMember = "Value";
und später einzelne items hinzufügen;
listBox2.Items.Add("Linechart " + index.ToString());//exception
aber ich bekomme fehler > Fehlermeldung:
"Die Items-Sammlung kann nicht geändert werden, wenn die DataSource-Eigenschaft festgelegt ist"
Wie könnte ich das lösen?
Danke im Voraus
Bitte benutze die Code-Tags. [Hinweis] Wie poste ich richtig?
Moin,
du musst die Einträge dem Dictionary hinzufügen, da du diese ja auch per BindingSource bindest. Die ListBox bindet sich ja an das Dictionary. Wenn du jetzt Elemente direkt zur ListBox hinzufügst, weiß die ListBox ja nicht mehr was sie zu tun hat, da sie ja den Eintrag nicht selber in das Dictionary schreiben kann. Hoffe das war verständlich 😃
Gruß
Khalid
"Jedes Ding hat drei Seiten, eine positive, eine negative und eine komische." (Karl Valentin)
Und dran denken, DisplayMember und ValueMember vor der Datasource setzen, sonst wird 3 mal gebunden.