将click事件添加到xamarin中的动态按钮

时间:2017-06-07 14:30:30

标签: c# events button xamarin click

我想从列表中添加按钮,具体取决于列表中有多少项。当我这样做时,它完美地运作:

enter image description here

事情是他们没有点击事件,我希望每个按钮都有一个事件,让用户根据点击的按钮导航到正确的页面。

我试图这样做,但它不起作用:

enter image description here

如果这是完全错误的话,有任何正确的方法吗?

2 个答案:

答案 0 :(得分:1)

在添加到StackLayout之前创建按钮:

foreach(var item in question.Answers)
{
     var button = new Button();
     button.Text = item.AnswerText;
     button.Clicked += async delegate { await Navigation.PushAsync(item.NextPage); };

     stack.Children.Add(button);
}

答案 1 :(得分:0)

你可以试试这个。

foreach(var item in question.Answers){

    var button = new Button{Text=item.AnswerText};
    button.Clicked += async(s,e)=> await Navigation.PushAsync(item.NextPage);
    stack.Children.Add(button);
}