bien, le titre à peu près tout dit.étiquette wont ajouter au contrôle du panneau à l'exécution (mais je ne reçois aucune erreur)
est ici un peu d'info: j'ai un fichier texte, et à l'intérieur que textfile contient:
Label
"this text will be associated with the Text property of the label once the label has been added to the Panel Control at runtime."
20, 45
Trebuchet MS
14.0
explication de la au-dessus du fichier ci-dessus ne peut avoir qu'une seule étiquette-info, ou il peut j'en ai mille. Voici comment cela fonctionne:
Control
Text Property
Locatoin
Font Name
Font Size
... Maintenant, tout va bien si je laisse les informations de police du fichier. mais dès que j'ai modifié mon expression régulière en fonction du nom de la police et de la taille de la police, mon programme n'ajoute plus le contrôle au Panel lors de l'exécution. il n'y a pas non plus d'erreurs de débogage ou de lignes squigly laides. Ça ne montre rien.
Donc, je suppose que c'est la dernière partie de la regex qui essaie de faire correspondre les informations de police/quelqu'un peut m'aider s'il vous plaît à comprendre/résoudre ce problème?
le code que j'ai est:
public partial class Form1 : Form
{
private void FillCanvas()
{
canvas.Controls.Clear();
canvas.Visible = true;
canvas.BringToFront();
txt.Visible = false;
MatchCollection lines = Regex.Matches(File.ReadAllText(Path), @"(.+?)\r\n""([^""]+)""\r\n(\d+), (\d+)\r\n""(\w*)\r\n" +
@"(\d+)");
foreach (Match match in lines)
{
string control = match.Groups[1].Value;
string text = match.Groups[2].Value;
int x = Int32.Parse(match.Groups[3].Value);
int y = Int32.Parse(match.Groups[4].Value);
string fname = match.Groups[6].Value;
float fsize = float.Parse(match.Groups[7].Value);
switch (control)
{
case "Label":
Label label = new Label();
label.Text = text;
label.AutoSize = true;
label.IsAccessible = true;
label.Font = new Font(fname, fsize);
label.MouseMove += new MouseEventHandler(label_MouseMove);
label.MouseDown += new MouseEventHandler(label_MouseDown);
label.MouseUp += new MouseEventHandler(label_MouseUp);
label.Click += new EventHandler(label_Click);
label.DoubleClick += new EventHandler(label_DoubleClick);
canvas.Controls.Add(label);
ControlCount++;
label.Name = ControlCount.ToString();
label.Location = new Point(x, y);
SelectedControl = label.Name;
break;
OH MERCI BEAUCOUP Ahmad Mageed, je suis tellement heureux en ce moment je pense que je vais pleurer lol. –