-
March 2nd, 2012, 07:19 AM
#1
[RESOLVED] Group Box Drawing Error
Hey guys,
I am checking a bunch of strings and adding controls if the strings match a pattern determined by some Regex logic. The problem is some of the stuff I am adding doesn't show.
I have commented out portions of the code below and it all works, everything shows individually but when I run the full routine (nothing commented out) only the CheckBoxes and "Installed:" labels show.
I have tried forcing an Update and Refresh on my groupbox and nothing.
What is going on here?
Code:
Code:
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using System.Text.RegularExpressions;
namespace StartupInstall
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
private void button1_Click(object sender, EventArgs e)
{
string[] numbers =
{
textBox1.Text,
textBox2.Text,
textBox3.Text,
};
string sPattern = @"^"".+""$";
textBox5.Text = sPattern;
int arrayPos = -1;
int progPos = 0;
Label[] labelNameRef = new Label[3];
Label[] labelInstalledRef = new Label[3];
Label[] labelStatusRef = new Label[3];
CheckBox[] checkboxRef = new CheckBox[3];
foreach (string s in numbers)
{
textBox4.AppendText(Environment.NewLine + s);
if (System.Text.RegularExpressions.Regex.IsMatch(s, sPattern))
{
textBox4.AppendText(Environment.NewLine + " - valid");
arrayPos++;
progPos++;
checkboxRef[arrayPos] = new CheckBox();
checkboxRef[arrayPos].Name = "programCB" + progPos.ToString();
checkboxRef[arrayPos].Text = progPos.ToString();
checkboxRef[arrayPos].Location = new Point(6, 17 + (24 * arrayPos));
groupBox1.Controls.Add(checkboxRef[arrayPos]);
//
labelNameRef[arrayPos] = new Label();
labelNameRef[arrayPos].Name = "programLAB" + progPos.ToString();
labelNameRef[arrayPos].Text = "program " + progPos.ToString();
labelNameRef[arrayPos].Location = new Point(44, 22 + (23 * arrayPos));
groupBox1.Controls.Add(labelNameRef[arrayPos]);
//
labelInstalledRef[arrayPos] = new Label();
labelInstalledRef[arrayPos].Name = "installedLAB" + progPos.ToString();
labelInstalledRef[arrayPos].Text = "Installed:";
labelInstalledRef[arrayPos].Location = new Point(248, 22 + (23 * arrayPos));
groupBox1.Controls.Add(labelInstalledRef[arrayPos]);
//
labelStatusRef[arrayPos] = new Label();
labelStatusRef[arrayPos].Name = "statusLAB" + progPos.ToString();
labelStatusRef[arrayPos].Text = "YES";
labelStatusRef[arrayPos].Location = new Point(303, 22 + (23 * arrayPos));
groupBox1.Controls.Add(labelStatusRef[arrayPos]);
groupBox1.Refresh();
}
else
{
textBox4.AppendText(Environment.NewLine + " - invalid");
}
}
}
}
}
Last edited by Fluidz; March 2nd, 2012 at 11:35 PM.
Reason: To Mark Solved
-
March 2nd, 2012, 11:35 PM
#2
Re: Group Box Drawing Error
Solved, turns out the controls were being sent to the back for some reason. All I did was add var[ArrayPos].BringToFront(); on each section and it's working.
Posting Permissions
- You may not post new threads
- You may not post replies
- You may not post attachments
- You may not edit your posts
-
Forum Rules
|
Click Here to Expand Forum to Full Width
|