2015-07-22 5 views
1

Я программно генерировать таблицу, в которой Text2 столбцы кнопка:Нажмите событие для сгенерированных программно кнопки XAML

for (int i = 0; i < workPackages.Length; i++) 
{ 
    //Define new Row to add 
    RowDef = new RowDefinition(); 
    RowDef.Height = new GridLength(60); 

    //Add row definition to Grid 
    WorkPackageResults.RowDefinitions.Add(RowDef); 

    //Define the control that will be added to new row 
    Text1 = new TextBlock(); 
    Text1.Text = workPackages[i].EWPStatus; 
    Text1.Width = 100; 
    Text1.TextAlignment = TextAlignment.Center; 

    Text2 = new Button(); 
    Text2.Content = workPackages[i].EWPCode; 
    Text2.Width = 300; 

    Text3 = new TextBlock(); 
    Text3.Text = workPackages[i].Description; 
    Text3.Width = 500; 
    Text3.TextAlignment = TextAlignment.Center; 

    Text4 = new TextBlock(); 
    Text4.Text = workPackages[i].ForeBadge; 
    Text4.Width = 100; 
    Text4.TextAlignment = TextAlignment.Center; 

    //create stackpanel and define which row to add the stackpanel to 
    StackP = new StackPanel(); 
    StackP.SetValue(Grid.RowProperty, i); 
    StackP.Orientation = Orientation.Horizontal; 
    StackP.Margin = new Thickness(50, 0, 0, 0); 

    //add your control to the stackpanel 
    StackP.Children.Add(Text1); 
    StackP.Children.Add(Text2); 
    StackP.Children.Add(Text3); 
    StackP.Children.Add(Text4); 

    //add the stackpanel to the grid 
    WorkPackageResults.Children.Add(StackP); 
} 

enter image description here

Как программно добавить событие щелчка? И когда это событие щелчка выполняется, как я узнаю, с какой кнопкой он пришел?

+1

Прикрепите команды к вашим кнопкам и привяжите их к командам ... иначе добавьте обработчики кликов. Это не должно отличаться от того, как вы обычно это делаете. –

ответ

1

Добавить обработчик событий в Text2.Click, который передаст отправителю в качестве параметра, вот как вы знаете, какой из них был нажат.

Смежные вопросы