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]));
//}
}
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.