TableLayoutPanel: Supprimer Des Lignes

J'ai un TableLayoutPanel qui est rempli avec des lignes lors de l'exécution à l'aide d'un fichier texte (chaque ligne du fichier texte, et de le mettre dans les cellules contenues dans les nouvelles lignes).
Code Ressemble à ceci:

public static string UrlList= @"C:\Users\Berisha\Desktop\URLs.txt";
string[] UrlRows = System.IO.File.ReadAllLines(@UrlList);
        private void InitPaths()
    {
        int a = 0;
        int c = 1;
        while (a < UrlRows.Length-1)
        {   
            //new label
            var label = new Label();
            label.Dock = DockStyle.Fill;
            label.AutoSize = false;
            label.Text = UrlRows[a];
            label.TextAlign = System.Drawing.ContentAlignment.MiddleLeft;
            label.Size = new System.Drawing.Size(22, 13);
            label.BackColor = System.Drawing.Color.Transparent;
            TBP.Controls.Add(label, 3, c); //Add to TableLayoutPanel
            a++;
            c++;
        }
    }

Bien que je veux être en mesure de modifier manuellement la source,
j'ai donc écrit une méthode qui permettrait de supprimer tout ce qui est nouveau créé, mais semblent être coincés ici, car il ne fonctionne pas:

        private void clearPaths()
    {   
        int c = UrlRows.Length - 1;
        while (c <= UrlRows.Length - 1)
        {
            TBP.RowStyles.RemoveAt(c); //Remove from TableLayoutPanel
            c--;
        }

    }

//Le Code s'Arrête à: TableLayoutPanel.RowStyles.RemoveAt(c);(en cours de Débogage)
//et l'erreur se lit comme suit : "la référence d'Objet n'est pas définie à une instance d'un objet"

Mise à jour: j'ai réussi à sortir de l'Erreur, mon Problème maintenant, après je dis RemoveAt, rien ne semble être enlevé
Quelqu'un sait ce que c'est que je pouvais faire?

OK, tu veux dire que c'est coincé en boucle pour toujours? Ou de ce qui "ne marche pas"? Vous devez être le plus descriptif. "ça ne marche pas" est probablement la pire façon, vous pouvez décrire un problème. Aussi, il est intéressant de noter que vous êtes incrémentation a dans les deux clearPaths ET InitPaths, mais est seulement déclaré dans InitPaths. Même si a étaient une variable globale, qui j'espère n'est pas avec un nom pareil, il ne semble pas que vous devez être l'incrémentation dans clearPaths. Je ne vois pas comment il pourrait l'être, mais, car il y aurait un conflit de nom avec votre déclaration de a dans InitPaths
Accidentellement oublié dans la seconde méthode lors de l'écriture de la question

OriginalL'auteur gbbb | 2013-04-25