Wczytanie danych z XMLa do textBoxa

0

Do comboBoxa wczytuję zawartość jednej kolumny pliku XML

 private void zamowienie_Load(object sender, EventArgs e)
        {
            DataSet dsSet = new DataSet();
            dsSet.ReadXml("E:\\baza\\spis_klientow.xml");
            comboBox2.DataSource = dsSet.Tables["spis_klientow"];
            comboBox2.DisplayMember = "ID";
        }

Teraz chciałbym po zaznaczeniu odpowiedniego ID w comboBoxie wyświetlić w textBoxach zawartość pliku XML (w DataGridView był by to jeden rząd).

private void comboBox2_SelectedIndexChanged(object sender, EventArgs e)
        {
            
                DataSet ds = new DataSet();
                ds.ReadXml("E:\\baza\\spis_klientow.xml");

                foreach (DataRow item in ds.Tables["spis_klientow"].Rows)
                {
                    
                    label1.Text = item[1].ToString();
                    
                }
            }

        } 

Jednak coś tu nie działa bo wartość jest taka sama mimo zmiany wartości comboBoxa.

0

W którym miejscu Twojego kodu bierzesz pod uwagę wartość (wybrany indeks) comboboxa?
Samo podbindowanie pod zdarzenie SelectedIndexChanged nie powoduje żadnego uwzględniania wartości tej kontrolki.

0

czyli jak to mam zapisać w kodzie?

0

Zatem rozbijamy problem na dwie części - pierwsza z nich: w jaki sposób pobierzesz aktualnie wybrany rekord z komboboksa?

0

ok zrobiłem to tak

private void zamowienie_Load(object sender, EventArgs e)
        {
            label2.Text = DateTime.Now.ToShortDateString();

            DataSet dsSet = new DataSet();
            dsSet.ReadXml("E:\\baza\\spis_klientow.xml");
            comboBox2.DataSource = dsSet.Tables["spis_klientow"];
            comboBox2.DisplayMember = "ID";
            comboBox2.ValueMember = "Imie";
            
        } 
private void comboBox2_SelectedIndexChanged(object sender, EventArgs e)
        {
            
                DataSet ds = new DataSet();
                ds.ReadXml("E:\\baza\\spis_klientow.xml");

                foreach (DataRow item in ds.Tables["spis_klientow"].Rows)
                {


                label10.Text = comboBox2.SelectedValue.ToString();
                    
                }
            }

        } 

tylko wczytuje mi jedna pozycję jak dodać kolejne?

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