Example #1
0
        public void generateTextBox()
        {
            try
            {
                f.panel1.Controls.Clear();
                var x   = 0;
                var y   = 10;
                var z   = 20;
                var gap = 30;

                //int a = 0;
                Label   labData           = null;
                TextBox txtData           = null;
                int     txtStartAddress   = baseStartAddress;
                int     labelStartAddress = baseStartAddress;

                for (int i = 0; i < baseTotalRegister; i++)
                {
                    labData = new Label();
                    f.panel1.Controls.Add(labData);
                    labData.Size     = new Size(50, 20);
                    labData.Location = new Point(y, z);
                    labData.Font     = new Font("Calibri", 8.25F, FontStyle.Regular, GraphicsUnit.Point, 0);

                    switch (baseDatatype)
                    {
                    case "LED":
                        var bulb = new LedBulb();
                        f.panel1.Controls.Add(bulb);
                        bulb.Size     = new Size(25, 25);
                        bulb.Location = new Point(y + 50, z - 5);
                        bulb.Padding  = new Padding(3);
                        bulb.Color    = Color.Red;
                        bulb.On       = false;
                        bulb.Tag      = x;
                        //if(!baseFunctionCode.Contains("2"))
                        //{
                        bulb.MouseDoubleClick += writeRequestWindow_OnDoubleClick;
                        //}

                        bulb.Name    = Convert.ToString(txtStartAddress + x);
                        z            = z + bulb.Size.Height + 10;
                        labData.Text = Convert.ToString(labelStartAddress + x);
                        break;

                    case "Binary":

                        labData.Location = new Point(gap, z);
                        txtData          = new TextBox();
                        f.panel1.Controls.Add(txtData);
                        txtData.Size              = new Size(110, 5);
                        txtData.Location          = new Point(gap + 50, z - 2);
                        txtData.TextAlign         = HorizontalAlignment.Right;
                        txtData.Tag               = x;
                        txtData.MaxLength         = 16;
                        txtData.TextAlign         = HorizontalAlignment.Right;
                        txtData.MouseDoubleClick += writeRequestWindow_OnDoubleClick;
                        z            = z + txtData.Size.Height + 5;
                        labData.Text = Convert.ToString(labelStartAddress + x);
                        txtData.Name = Convert.ToString(txtStartAddress + x);

                        break;

                    case "Hex":
                        txtData = new TextBox();
                        f.panel1.Controls.Add(txtData);
                        txtData.Size      = new Size(55, 20);
                        txtData.Location  = new Point(y + 50, z - 2);
                        txtData.TextAlign = HorizontalAlignment.Right;
                        txtData.Tag       = x;
                        txtData.MaxLength = 6;
                        z = z + txtData.Size.Height + 5;
                        txtData.MouseDoubleClick += writeRequestWindow_OnDoubleClick;
                        labData.Text              = Convert.ToString(labelStartAddress + x);
                        txtData.Name              = Convert.ToString(txtStartAddress + x);
                        break;

                    case "Int16":

                        txtData = new TextBox();
                        f.panel1.Controls.Add(txtData);
                        txtData.Size              = new Size(55, 20);
                        txtData.Location          = new Point(y + 50, z - 2);
                        txtData.TextAlign         = HorizontalAlignment.Right;
                        txtData.Tag               = x;
                        txtData.MaxLength         = 5;
                        txtData.MouseDoubleClick += writeRequestWindow_OnDoubleClick;
                        z            = z + txtData.Size.Height + 5;
                        labData.Text = Convert.ToString(labelStartAddress + x);
                        txtData.Name = Convert.ToString(txtStartAddress + x);


                        break;

                    case "Unsigned Int16":

                        txtData = new TextBox();
                        f.panel1.Controls.Add(txtData);
                        txtData.Size              = new Size(55, 20);
                        txtData.Location          = new Point(y + 50, z - 2);
                        txtData.TextAlign         = HorizontalAlignment.Right;
                        txtData.Tag               = x;
                        txtData.MaxLength         = 5;
                        txtData.MouseDoubleClick += writeRequestWindow_OnDoubleClick;
                        z            = z + txtData.Size.Height + 5;
                        labData.Text = Convert.ToString(labelStartAddress + x);
                        txtData.Name = Convert.ToString(txtStartAddress + x);


                        break;

                    case "Int32":
                        x++;
                        i++;

                        txtData = new TextBox();
                        f.panel1.Controls.Add(txtData);
                        txtData.Size              = new Size(55, 20);
                        txtData.Location          = new Point(y + 50, z - 2);
                        txtData.TextAlign         = HorizontalAlignment.Right;
                        txtData.Tag               = x;
                        txtData.MaxLength         = 5;
                        txtData.MouseDoubleClick += writeRequestWindow_OnDoubleClick;
                        z            = z + txtData.Size.Height + 5;
                        labData.Text = Convert.ToString(labelStartAddress + x);
                        txtData.Name = Convert.ToString(txtStartAddress + x);


                        break;

                    case "Unsigned Int32":
                        x++;
                        i++;

                        txtData = new TextBox();
                        f.panel1.Controls.Add(txtData);
                        txtData.Size              = new Size(55, 20);
                        txtData.Location          = new Point(y + 50, z - 2);
                        txtData.TextAlign         = HorizontalAlignment.Right;
                        txtData.Tag               = x;
                        txtData.MaxLength         = 5;
                        txtData.MouseDoubleClick += writeRequestWindow_OnDoubleClick;
                        z            = z + txtData.Size.Height + 5;
                        labData.Text = Convert.ToString(labelStartAddress + x);
                        txtData.Name = Convert.ToString(txtStartAddress + x);


                        break;

                    case "Float":
                        x++;
                        i++;

                        txtData = new TextBox();
                        f.panel1.Controls.Add(txtData);
                        txtData.Size      = new Size(70, 20);
                        txtData.Location  = new Point(y + 50, z - 2);
                        txtData.TextAlign = HorizontalAlignment.Right;
                        txtData.Tag       = x;
                        txtData.MaxLength = 9;
                        z = z + txtData.Size.Height + 5;
                        txtData.MouseDoubleClick += writeRequestWindow_OnDoubleClick;
                        txtData.Name              = Convert.ToString(txtStartAddress + x);
                        if (baseFunctionCode.Contains("3"))
                        {
                            labData.Text = Convert.ToString(labelStartAddress + x + 400000);
                        }
                        else
                        {
                            labData.Text = Convert.ToString(labelStartAddress + x + 300000);
                        }

                        break;
                    } // End of Switch Case
                    if (!baseDatatype.Equals("LED"))
                    {
                        txtData.ReadOnly = true;
                    }

                    x++;
                    if (z > f.panel1.Size.Height - 30)
                    {
                        var inc = 130;
                        y    = y + inc;
                        z    = 20;
                        gap += 190;
                    }
                }  // End For loop
                _displayCtrlCount = x;
                //UpdateData();
            }
            catch (Exception e)
            {
                MessageBox.Show("Exception while generating box");
            }
        }
Example #2
0
        // This function only  for Write data Functionality,
        //And validation is not put in this function otherwise basdatatable  generatetextbox() and this function are same.
        public void  generateTextBox()
        {
            this.panel1.Controls.Clear();
            var x   = 0;
            var y   = 10;
            var z   = 20;
            var gap = 30;

            Label   labData             = null;
            TextBox txtData             = null;
            int     textboxStartAddress = WRFBaseDataTable.baseStartAddress;
            int     labelStartAddress   = WRFBaseDataTable.baseStartAddress;

            for (int i = 0; i < WRFBaseDataTable.baseTotalRegister; i++)
            {
                labData = new Label();
                this.panel1.Controls.Add(labData);
                labData.Size     = new Size(40, 20);
                labData.Location = new Point(y, z);
                labData.Font     = new Font("Calibri", 8.25F, FontStyle.Regular, GraphicsUnit.Point, 0);

                switch (WRFBaseDataTable.baseDatatype)
                {
                case "LED":
                    var bulb = new LedBulb();
                    this.panel1.Controls.Add(bulb);
                    bulb.Size     = new Size(25, 25);
                    bulb.Location = new Point(y + 40, z - 5);
                    bulb.Padding  = new Padding(3);
                    bulb.Color    = Color.Red;
                    bulb.On       = false;
                    bulb.Tag      = x;
                    bulb.Click   += WRFBaseDataTable.BulbClick;
                    bulb.Name     = Convert.ToString(textboxStartAddress + x);
                    z             = z + bulb.Size.Height + 10;
                    labData.Text  = Convert.ToString(labelStartAddress + x);
                    break;

                case "Binary":

                    labData.Location = new Point(gap, z);
                    txtData          = new TextBox();
                    this.panel1.Controls.Add(txtData);
                    txtData.Size      = new Size(110, 5);
                    txtData.Location  = new Point(gap + 40, z - 2);
                    txtData.TextAlign = HorizontalAlignment.Right;
                    txtData.Tag       = x;
                    txtData.MaxLength = 16;
                    txtData.TextAlign = HorizontalAlignment.Right;
                    txtData.Leave    += WRFBaseDataTable.TxtDataBinaryLeave;
                    txtData.Enter    += WRFBaseDataTable.txtData_Enter;
                    txtData.KeyPress += WRFBaseDataTable.txtDataBinaryKeyPress;
                    z            = z + txtData.Size.Height + 5;
                    labData.Text = Convert.ToString(labelStartAddress + x);
                    txtData.Name = Convert.ToString(textboxStartAddress + x);

                    break;

                case "Hex":
                    txtData = new TextBox();
                    this.panel1.Controls.Add(txtData);
                    txtData.Size      = new Size(55, 20);
                    txtData.Location  = new Point(y + 40, z - 2);
                    txtData.TextAlign = HorizontalAlignment.Right;
                    txtData.Tag       = x;
                    txtData.MaxLength = 4;
                    z                 = z + txtData.Size.Height + 5;
                    txtData.Leave    += WRFBaseDataTable.TxtDataHexLeave;
                    txtData.Enter    += WRFBaseDataTable.txtData_Enter;
                    txtData.KeyPress += WRFBaseDataTable.txtDataHexKeyPress;
                    labData.Text      = Convert.ToString(labelStartAddress + x);
                    txtData.Name      = Convert.ToString(textboxStartAddress + x);
                    break;

                case "Integer":

                    txtData = new TextBox();
                    this.panel1.Controls.Add(txtData);
                    txtData.Size      = new Size(55, 20);
                    txtData.Location  = new Point(y + 40, z - 2);
                    txtData.TextAlign = HorizontalAlignment.Right;
                    txtData.Tag       = x;
                    txtData.MaxLength = 5;
                    txtData.Leave    += WRFBaseDataTable.TxtInt16DataLeave;
                    txtData.Enter    += WRFBaseDataTable.txtData_Enter;
                    txtData.KeyPress += WRFBaseDataTable.txtDataIntegerKeyPress;
                    z            = z + txtData.Size.Height + 5;
                    labData.Text = Convert.ToString(labelStartAddress + x);
                    txtData.Name = Convert.ToString(textboxStartAddress + x);


                    break;

                case "Int16":

                    txtData = new TextBox();
                    this.panel1.Controls.Add(txtData);
                    txtData.Size      = new Size(55, 20);
                    txtData.Location  = new Point(y + 40, z - 2);
                    txtData.TextAlign = HorizontalAlignment.Right;
                    txtData.Tag       = x;
                    txtData.MaxLength = 5;
                    txtData.Leave    += WRFBaseDataTable.TxtInt16DataLeave;
                    txtData.Enter    += WRFBaseDataTable.txtData_Enter;
                    txtData.KeyPress += WRFBaseDataTable.txtDataIntegerKeyPress;
                    z            = z + txtData.Size.Height + 5;
                    labData.Text = Convert.ToString(labelStartAddress + x);
                    txtData.Name = Convert.ToString(textboxStartAddress + x);


                    break;

                case "Unsigned Int16":

                    txtData = new TextBox();
                    this.panel1.Controls.Add(txtData);
                    txtData.Size      = new Size(55, 20);
                    txtData.Location  = new Point(y + 40, z - 2);
                    txtData.TextAlign = HorizontalAlignment.Right;
                    txtData.Tag       = x;
                    txtData.MaxLength = 5;
                    txtData.Leave    += WRFBaseDataTable.TxtUInt16DataLeave;
                    txtData.Enter    += WRFBaseDataTable.txtData_Enter;
                    txtData.KeyPress += WRFBaseDataTable.txtDataIntegerKeyPress;
                    z            = z + txtData.Size.Height + 5;
                    labData.Text = Convert.ToString(labelStartAddress + x);
                    txtData.Name = Convert.ToString(textboxStartAddress + x);


                    break;

                case "Int32":
                    x++;
                    i++;

                    txtData = new TextBox();
                    this.panel1.Controls.Add(txtData);
                    txtData.Size      = new Size(55, 20);
                    txtData.Location  = new Point(y + 40, z - 2);
                    txtData.TextAlign = HorizontalAlignment.Right;
                    txtData.Tag       = x;
                    txtData.MaxLength = 5;
                    txtData.Leave    += WRFBaseDataTable.TxtInt32DataLeave;
                    txtData.Enter    += WRFBaseDataTable.txtData_Enter;
                    txtData.KeyPress += WRFBaseDataTable.txtDataIntegerKeyPress;
                    z            = z + txtData.Size.Height + 5;
                    labData.Text = Convert.ToString(labelStartAddress + x);
                    txtData.Name = Convert.ToString(textboxStartAddress + x);


                    break;

                case "Unsigned Int32":
                    x++;
                    i++;

                    txtData = new TextBox();
                    this.panel1.Controls.Add(txtData);
                    txtData.Size      = new Size(55, 20);
                    txtData.Location  = new Point(y + 40, z - 2);
                    txtData.TextAlign = HorizontalAlignment.Right;
                    txtData.Tag       = x;
                    txtData.MaxLength = 5;
                    txtData.Leave    += WRFBaseDataTable.TxtUInt32DataLeave;
                    txtData.Enter    += WRFBaseDataTable.txtData_Enter;
                    txtData.KeyPress += WRFBaseDataTable.txtDataIntegerKeyPress;
                    z            = z + txtData.Size.Height + 5;
                    labData.Text = Convert.ToString(labelStartAddress + x);
                    txtData.Name = Convert.ToString(textboxStartAddress + x);


                    break;

                case "Float":
                    x++;
                    i++;

                    txtData = new TextBox();
                    this.panel1.Controls.Add(txtData);
                    txtData.Size      = new Size(55, 20);
                    txtData.Location  = new Point(y + 40, z - 2);
                    txtData.TextAlign = HorizontalAlignment.Right;
                    txtData.Tag       = x;
                    txtData.MaxLength = 7;
                    z                 = z + txtData.Size.Height + 5;
                    txtData.Leave    += WRFBaseDataTable.TxtDataFloatLeave;
                    txtData.Enter    += WRFBaseDataTable.txtData_Enter;
                    txtData.KeyPress += WRFBaseDataTable.txtDataFloatKeyPress;
                    labData.Text      = Convert.ToString(labelStartAddress + x);
                    txtData.Name      = Convert.ToString(textboxStartAddress + x);

                    break;
                } // End of Switch Case

                x++;
                if (z > this.panel1.Size.Height - 30)
                {
                    var inc = 130;
                    y    = y + inc;
                    z    = 20;
                    gap += 190;
                }
            }  // End For loop
            WRFBaseDataTable._displayCtrlCount = x;
            UpdateData();
        }