Windows商店应用,如何获取gridview的标题值?

时间:2013-07-23 02:02:25

标签: c# xaml binding windows-store-apps datatemplate

以下是.xaml中gridview的groupstyle。

        <GridView.GroupStyle>
            <GroupStyle>
                <GroupStyle.HeaderTemplate>
                    <DataTemplate>
                        <Button x:Name="HeaderBtn" Click="HeaderButton_Click">
                            <StackPanel Orientation="Horizontal">
                                <TextBlock x:Name="Title" Text="{Binding Key}" />
                                <TextBlock Text="{StaticResource ChevronGlyph}" />
                            </StackPanel>
                        </Button>
                    </DataTemplate>
                </GroupStyle.HeaderTemplate>
             </GourpStyle>
        </GridView.GroupStyle>

绑定值键是列表的键。

这是按钮操作。

    private void HeaderButton_Click(object sender, RoutedEventArgs e)
    {

    }

当我点击按钮时,如何获取x:Name为“Title”的文本块的文本值?

1 个答案:

答案 0 :(得分:0)

2个选项:

MVVM方式是使用ICommand而不是事件,并将值作为命令参数传递。

<Button x:Name="HeaderBtn" Command="{Binding HeaderCommand}" CommandParameter="{Binding Title}">

在事件处理程序中,您应该能够检索按钮的数据上下文以及标题值

private void HeaderButton_Click(object sender, RoutedEventArgs e)
{
var button = (Button)sender;
var dataContext = (HeaderClass)button.DataContext;
var title = dataContext.Title; //here is your value
}