首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >GridView导航

GridView导航
EN

Stack Overflow用户
提问于 2013-12-20 09:12:52
回答 1查看 120关注 0票数 0

这是我的Windows 8应用程序代码的一部分。我没有在VS 2013之前使用网格模板,而是在空白应用程序中创建了自己的网格模板。下面的代码允许我通过网格导航到应用程序中的不同页面。我是否可以通过使用和的索引来确定当网格被选择为时导航到应用程序中的其他页面?

代码语言:javascript
复制
   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);
    }
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2013-12-20 12:21:58

您可以为每个网格指定唯一的名称,并将网格的点击事件附加到单个事件处理程序中。

这是XAML

代码语言:javascript
复制
            <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类型,并获得网格的名称,并根据该名称执行您想要的代码,如下所示

代码语言:javascript
复制
    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
        }
    }
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/20700016

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档