Array und Textbox weiterverarbeiten

RealFairPlayer

Grünschnabel
Hallo zusammen,

So, mein erster Beitrag, habt Mitleid :) Arbeite mich derzeit in die C# Welt ein, komme eigentlich aus der PHP Welt.

Ich habe folgende Aufgabenstellung:

Ich lese Werte aus einem Textfile (und schreibe diese in eine Readonly Textbox)
Ich erstelle zu jedem erhaltenen Wert eine ComboBox.

Beides, die ComboBox und die readonly textfelder gehen in ein TableLayout rein.

Mein Problem ist das ich es einfach nicht gebacken bekomme auf die dynamisch angelegten ComboBoxen/Textfelder zuzugreifen.

Im Endeffekt soll anhand der Textfelder eine zugehörige Auswahl in der ComboBox stattfinden, und das wiederum muss dann in einem gewissen Format wieder in ein Textfile geschrieben werden.

Hier mein Code:

Code:
    string tempPath = System.IO.Path.GetTempPath();

                int lineCount = System.IO.File.ReadAllLines(tempPath + "vefTokens.txt").Length;

              //  MessageBox.Show(lineCount.ToString());
                TextDatei c_textdatei = new TextDatei();
                int c1 = 1;


                OleDbConnection con = new OleDbConnection(@"Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + bselectDB.Text + "");
                con.Open();

                string strSQL = "SELECT * FROM " + cbTables.Text;

                OleDbCommand cmd = new OleDbCommand(strSQL, con);
                OleDbDataReader dr = cmd.ExecuteReader();
                TextBox[] arrTokens = new TextBox[lineCount];

                int FieldCounter = 0;

                for (int i = 0; i < lineCount; i++)
                {

                    

                    ComboBox arrCombo1 = new ComboBox();



                    arrCombo1.Size = new Size(270, 25);
                    arrCombo1.Location = new Point(10, 10);


                    Controls.Add(arrCombo1);

                    

                    tableLayoutPanel8.Controls.Add(arrCombo1);


                    for (int a = 0; a < dr.FieldCount; a++)
                    {

                        arrCombo1.Items.Add(dr.GetName(a).ToString());
                    }
                    
                    
                    string tokens = c_textdatei.ReadLine(tempPath + "vefTokens.txt",c1);
                    arrTokens[i] = new TextBox();
                    arrTokens[i].Text = tokens;
                    tableLayoutPanel8.Controls.Add(arrTokens[i]);

                    FieldCounter++;
                    
                    
                    c1++;
                }
 

Anhänge

  • hlp_req.png
    hlp_req.png
    5,2 KB · Aufrufe: 14
hallo RealFairPlayer,

um auf die comboboxen zugreifen zu können musst du die instanzen behalten. d.h. du musst ein array oder eine liste aus comboboxen erstellen (anstatt der einzelnen in zeile 26) und kannst dann mithilfe des index darauf zugreifen.

Peter
 
Zuletzt bearbeitet:

Neue Beiträge

Zurück