Comment créer par programmation de la Grille à l'intérieur de la ligne d'une Grille en Wpf

Je travaille dans WPF -- Il n'y a button avec click event handler dans mon application. Que je clique sur le bouton, il est gestionnaire d'événement génère une nouvelle ligne dans la grille nommé comme grids. Dans cette nouvelle Ligne, je veux ajouter une autre grille par programme pour ajouter une Étiquette, Bouton et la zone de texte dans cette grille en ligne.
Comme je l'ai exécuté mon code il ne génère un texboxes! où les étiquettes et le bouton indiqué qu'une fois! Ici, le code et l'image est : hésitez pas à me demander si ma requête n'est pas clair pour vous!

 int r =0;
 private void button2_Click(object sender, RoutedEventArgs e)
    {
        TextEdit text1; Button button1; Grid grid1;
        grids.RowDefinitions.Add(new RowDefinition());
        text1 = new TextEdit();
        text1.SetValue(Grid.ColumnProperty, 1);
        text1.SetValue(Grid.RowProperty, r);
        button1 = new Button();
        button1.Content = "Left + " + r;
        button1.Click += new RoutedEventHandler(button1_Click);
        button1.SetValue(Grid.ColumnProperty, 1);
        button1.SetValue(Grid.RowProperty, r);
        grid1 = new Grid();
        grid1.SetValue(Grid.ColumnProperty, 1);
        grids.RowDefinitions.Add(new RowDefinition());
        grid1.SetValue(Grid.RowProperty, r);
        grids.Children.Add(button1);
        grids.Children.Add(text1);
        r = r + 1;
    }

Comment créer par programmation de la Grille à l'intérieur de la ligne d'une Grille en Wpf
MODIFIER

 int r =0;
 private void button2_Click(object sender, RoutedEventArgs e)
  {
    db obj = new db();
    var query = from p in obj.TableA select p ;

  foreach(var a in query.ToList())
  {
    TextEdit text1; Button button1; Grid grid1;
    grids.RowDefinitions.Add(new RowDefinition());
    text1 = new TextEdit();
    text1.SetValue(Grid.ColumnProperty, 1);
    text1.SetValue(Grid.RowProperty, r);
    button1 = new Button();
    button1.Content = a.name;
    button1.Click += new RoutedEventHandler(button1_Click);
    button1.SetValue(Grid.ColumnProperty, 1);
    button1.SetValue(Grid.RowProperty, r);
    grid1 = new Grid();
    grid1.SetValue(Grid.ColumnProperty, 1);
    grids.RowDefinitions.Add(new RowDefinition());
    grid1.SetValue(Grid.RowProperty, r);
    grids.Children.Add(button1);
    grids.Children.Add(text1);
    r = r + 1;}
}
Vous devez utiliser StackPanel au lieu de Grid que la surface externe de mise en page
ok merci je devrais ajouter cette stackpanel dans grid1?
Grille avec le nom grids devrait être un stackpanel qui serait alors de contenir toutes les grilles..
ok je vais essayer cela
pouvez-vous ne pas imbriquer une grille dans une grille

OriginalL'auteur Tameen Malik | 2013-09-29