在Windows Phone 8.1中,有没有一种方法可以在按钮单击时传递参数?
我有一个5x5按钮的网格,它们都应该调用同一个方法,但是使用不同的参数。我像这样添加了一个处理程序:
foreach (var child in buttonGrid.Children)
{
Button b = child as Button;
if (b != null)
{
b.Click += Button_Click;
// I want to add an argument to this
}
}
现在,我唯一能够获取按钮索引的方法是遍历整个网格,并检查发送器是否等于按钮:
private void Button_Click(object sender, RoutedEventArgs e)
{
for (int i = 0; i < buttonGrid.Children.Count; i++)
{
if (sender == buttonGrid.Children[i])
{
DoSomething(i);
return;
}
}
}
这个方法可以工作,但我不太喜欢这种方式。除了为这25个按钮创建不同的方法之外,是否有更有效的方法?
我尝试在互联网上搜索,但Windows Phone的文档和示例真的很缺乏。如果有人能指引我一个好的Windows Phone 8.1教程库,那也会很有帮助。