这是我的Windows 8应用程序代码的一部分。我没有在VS 2013之前使用网格模板,而是在空白应用程序中创建了自己的网格模板。下面的代码允许我通过网格导航到应用程序中的不同页面。我是否可以通过使用和的索引来确定当网格被选择为时导航到应用程序中的其他页面?
private void grid1_Tapped(object sender, TappedRoutedEventArgs e)
{
Frame.Navigate(typeof(pageA), sender as Grid);
}
private void grid2_Tapped(object sender, TappedRoutedEventArgs e)
{
Frame.Navigate(typeof(pageB), sender as Grid);
}
private void grid3_Tapped(object sender, TappedRoutedEventArgs e)
{
Frame.Navigate(typeof(pageC), sender as Grid);
}发布于 2013-12-20 12:21:58
您可以为每个网格指定唯一的名称,并将网格的点击事件附加到单个事件处理程序中。
这是XAML
<Grid x:Name="Grid1" Tapped="Grid_Tapped">
<!--Your Code Here-->
</Grid>
<Grid x:Name="Grid2" Tapped="Grid_Tapped">
<!--Your Code Here-->
</Grid>
<Grid x:Name="Grid3" Tapped="Grid_Tapped">
<!--Your Code Here-->
</Grid>对于事件,您只需将发送方键入到Grid类型,并获得网格的名称,并根据该名称执行您想要的代码,如下所示
private void Grid_Tapped(object sender, TappedRoutedEventArgs e)
{
if (((Grid)sender).Name == "Grid1")
{
//your code for grid1
}
else if (((Grid)sender).Name == "Grid2")
{
//your code for grid2
}
else if (((Grid)sender).Name == "Grid3")
{
//your code for grid3
}
}https://stackoverflow.com/questions/20700016
复制相似问题