private void DisplayAvailableMaps() { availableMapsListBox.Items.Clear(); // Call a static method that will show all maps from db. string sql = "SELECT * FROM MAPS;"; try { MySqlDataReader reader = DataBase.ExecuteReader(sql); while (reader.Read()) { LoadMapRecord record = new LoadMapRecord(Convert.ToInt32(reader[0]), Convert.ToInt32(reader[1]), Convert.ToInt32(reader[2])); records.Add(record); } } catch (Exception ex) { Console.WriteLine(ex.Message); } finally { DataBase.CloseConnection(); } // Sort descending records.Sort((r, r2) => r2.Id.CompareTo(r.Id)); foreach (LoadMapRecord record in records) { availableMapsListBox.Items.Add(record); } }
private void loadSelectMapBtn_Click(object sender, EventArgs e) { if (availableMapsListBox.SelectedItem != null) { LoadMapRecord record = (LoadMapRecord)availableMapsListBox.SelectedItem; // Invoke the event MapLoadedEvent to pass the map object to the parent form. if (LoadMapEvent != null) { LoadMapEvent.Invoke(record.Id); } Close(); } else { MessageBox.Show("Please select a map."); } }