streda, 30 január 2013 16:29 Written by 2559 times
Rate this item
(7 votes)

C# - Dynamické vytvorenie TextBox-u

Ako dynamicky vytvárať TextBox?

Funkcia v zdrojáku ukazuje jeden zo spôsobov ako vytvoriť ľubovoľný, užívateľom zadaný, počet TextBox-ov.

Vstupné parametre predstavujú počet riadkov a stĺpcov.

Napríklad pre 4 riadky a 5 stĺpcov (rows = 4, columns = 5) by výstup vyzeral nasledovne:

dynamicTextBox


Zdrojový kód:

 

        public void createDynamicTextBox(int rows, int columns)
        {
            int countCol = 0; 
            int countRow = 0;
            int tabIdx = 0;
            int xPos = 0;
            int yPos = 0;
            try
            {
                for (countRow = 0; countRow < rows; countRow++)
                {
                    for (countCol = 0; countCol < columns; countCol++)
                    {
                        TextBox txtBox = new TextBox();
                        txtBox.Location = new Point(xPos, yPos); //pozicia zobrazenia TB
                        //vytvorenie nazvu noveho TB
                        txtBox.Name = "TextBox" + countRow.ToString() + countCol.ToString();
                        txtBox.Size = new Size(30, 30); //definovanie rozmerov
                        txtBox.TabIndex = tabIdx;       //priradenie tab indexu
                        this.Controls.Add(txtBox);      //pridanie TB do winForm
                        xPos += 30;     //posunutie pozicie dalsieho stlpca v jednom riadku
                        tabIdx++;
                    }
                    //nastavenie pozicie dalsieho riadku
                    xPos = 0;
                    yPos += 30;
                }
            }
            catch (Exception err)
            {
                MessageBox.Show(err.Message, "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
            }
        }

 

 

Last modified on pondelok, 19 december 2016 21:22
Ing.Peter Šuba

Zakladateľ www.projectik.eu

It's time for another revolution

(Why so serious?)

Website: www.projectik.eu