从DataGrid WPF传递selectedItem作为CommandParameter

时间:2009-11-23 15:05:21

标签: wpf datagrid command

我有一个Datagrid,我有一个Hyperlink列                                                                                                                                                                                                                                                                            

当用户点击此超链接时,我想打开一个表格,我将在其中显示所选员工的工资分配。请告诉我如何将所选记录的EmployeeId作为命令参数传递,以便我可以显示ite详细信息。

1 个答案:

答案 0 :(得分:2)

我不确切知道如何使用DataGrid,因为我没有使用它,但在ListBox中你可以应用这样的数据模板(所有不相关的东西都被移除):

<DataTemplate>
    <Grid>
        <Hyperlink Command="{Binding DataContext.MyCommand, 
                             RelativeSource={RelativeSource AncestorType={x:Type ListBox}, 
                             Mode=FindAncestor}}"
                   CommandParameter="{Binding}"/>
    </Grid>
</DataTemplate>

这里我假设你在ListBox的DataContext中有你的命令的MyCommand属性。

对于offtop也很抱歉,但是你的用户是否真的需要DataGrid以及其一体化的愚蠢excel式设计?这是显示任何数据的最差方式。也许最好使用风格好的ListBox?开发人员经常使用DataGrid,因为它很容易从数据库中显示某些表的内容。但易于显示和易于使用的东西不一样。因此,如果您不需要DataGrid的任何额外功能,请使用其他控件。