Klasy a Windows Form

0

Czy coś z tego kodu, można umieścić w klasach i czy w ogóle ma to sens?

 namespace sklep
{
    public partial class producenci : Form
    {
        public producenci()
        {
            InitializeComponent();
        }
 
        private void btn_dodaj_Click(object sender, EventArgs e)
        {
            int n = dataGridView_producenci.Rows.Add();
            dataGridView_producenci.Rows[n].Cells[0].Value = textBox1.Text;
            dataGridView_producenci.Rows[n].Cells[1].Value = textBox2.Text;
            dataGridView_producenci.Rows[n].Cells[2].Value = textBox3.Text;
            dataGridView_producenci.Rows[n].Cells[3].Value = textBox4.Text;
            dataGridView_producenci.Rows[n].Cells[4].Value = textBox5.Text;
            dataGridView_producenci.Rows[n].Cells[5].Value = textBox6.Text;
        }
 
        private void btn_zapiszBD_Click(object sender, EventArgs e)
        {
            DataSet ds = new DataSet();
            DataTable dt = new DataTable();
            dt.TableName = "spis_producentów";
            dt.Columns.Add("Producent");
            dt.Columns.Add("Ulica");
            dt.Columns.Add("Nr_lokalu");
            dt.Columns.Add("Kod_pocztowy");
            dt.Columns.Add("Miejscowość");
            dt.Columns.Add("Telefon");
            ds.Tables.Add(dt);
  
            foreach (DataGridViewRow r in dataGridView_producenci.Rows)
            {
 
                 DataRow row1 = ds.Tables["spis_producentów"].NewRow();
                row1["Producent"] = r.Cells[0].Value.ToString();
                row1["Ulica"] = r.Cells[1].Value.ToString();
                row1["Nr_lokalu"] = r.Cells[2].Value.ToString();
                row1["Kod_pocztowy"] = r.Cells[3].Value.ToString();
                row1["Miejscowość"] = r.Cells[4].Value.ToString();
                row1["Telefon"] = r.Cells[5].Value.ToString();
                ds.Tables["spis_producentów"].Rows.Add(row1);
 
            }
            ds.WriteXml("E:\\sklep\\baza\\spis_producentow.xml");
        }
    }
} 
0

Pewnie że ma ;) Np w zdarzeniu btn_dodaj_Click, kod wewnątrz można przenieść do jakiejś zewnętrznej klasy, która np będzie obsługiwać dane wchodzące/wychodzące z UI, a w środku tego zdarzenia dać tylko wywołanie jakiejś metody o nazwie DodajProducenta(), czy co tam dodajesz. Analogicznie zapis. Taki kod jest łatwiejszy w zarządzaniu i dużo bardziej czytelny. Nie bój się robić wielu klas, to nic nie kosztuje, a poprawia czytelność i często skalowalność programu.

1 użytkowników online, w tym zalogowanych: 0, gości: 1