Laden...

Selektierten Listboxeintrag aus Json-Dictionary und ListBox löschen

Erstellt von max85 vor 5 Jahren Letzter Beitrag vor 5 Jahren 810 Views
M
max85 Themenstarter:in
35 Beiträge seit 2018
vor 5 Jahren
Selektierten Listboxeintrag aus Json-Dictionary und ListBox löschen

Hallo,

ich speichere listbox einträge als json datei.Und per delete button möchte ich selektierte zeile aus json dictionary löschen.Wie könnte ich selektierte Eintrag löschen?
Danke im Voraus!


List<Series> s = new List<Series>();
        public void btnNewSeries_Click(object sender, EventArgs e)
        {
            Series s1;
            int d;
            if (s.Count < 10)
            {
                s1 = new Series { Data = txtSeriesDP.Text, Color = txtSeriesColor.Text };
                if (txtSeriesDP == null || string.IsNullOrWhiteSpace(txtSeriesDP.Text) || 
                     txtSeriesColor == null || string.IsNullOrWhiteSpace(txtSeriesColor.Text) ||
                     !int.TryParse(txtSeriesDP.Text, out d) || !int.TryParse(txtSeriesColor.Text, out d))
                 {
                     MessageBox.Show("Bitte Series richtig füllen!");
                 }
                 else
                 {
                   s.Add(s1);
                 }                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        
                listBoxSeries_line.DataSource = null;
                listBoxSeries_line.DataSource = s;
                linechart.series = s;
                txtSeriesColor.Clear();
                txtSeriesDP.Clear();
            }
        }
        private void btnDeleteSerie_Click(object sender, EventArgs e)
        {
            string filePath = dir + "Settings.json";
            if (!File.Exists(filePath))
            {
                var myFile = File.Create(filePath);
                myFile.Close();
            }
            // Read existing json data
            string jsonData = System.IO.File.ReadAllText(filePath);
            // Deserialize to object
            Dictionary<string, LineChart> list = JsonConvert.DeserializeObject<Dictionary<string, LineChart>>(jsonData);
            //foreach (var item in list)
            //{
                listBoxSeries_line.Items.RemoveAt(listBoxSeries_line.SelectedItems.IndexOf(listBoxSeries_line.SelectedItems[0]));
            //}
        }

5.299 Beiträge seit 2008
vor 5 Jahren

ich wüsste nicht, dasses ein json-dictionary überhaupt gibt.
Ansonsten löscht man einen Eintrag aus einem Dictionary mit der Dictionary.Remove() - Methode.
Sehr hilfreich finde ich immer den ObjectBrowser, wo man etwa die dictionary-Klasse suchen kann, und alle verfügbaren Methoden und Properties sehen - inklusive ihrer Aufrufe-Konventionen.
Kennst du den ObjectBrowser? ist ein Built-In-Tool der IDE.

Der frühe Apfel fängt den Wurm.