在DataGrid WPF中显示另一个表的信息与另一个表的关系。

问题描述 投票:0回答:1

我正在做一个类似于银行账户的数据库管理器客户端,以达到学习的目的。我正在使用DataTable对象,我想使用它们之间的关系来显示存储在表中的内容,这(可能)可以使用DataGrid自动完成。

例如,我有Banks、Owner和Accounts表。我怎样才能在Accounts表中显示所有者或银行名称,而不是在DataGrid中显示其ID?当前表在DataGrid中的表示方法

我正在使用DataTables作为我的DataGrid控件的数据上下文,我已经了解了控件(combobox,listboxes等)中的DisplayMemberPath属性,但我没有找到任何关于如何在DataGrid行中使用它的信息。

dataGrid.DataContext = ((DataTable)table).DefaultView;

我已经了解了控件(组合框、列表框等)中的DisplayMemberPath属性,但我没有找到任何关于如何在DataGrid行中使用它的信息。

谢谢你!我正在做一个类似于数据库管理客户端的东西。

c# wpf datatable datagrid
1个回答
0
投票

你可以将Datagrid的AutoGenerateColumns属性设置为False,自己创建栏位

<DataGrid AutoGenerateColumns="False">
        <DataGrid.Columns>
            <DataGridTextColumn Header="Bank Name" Binding="{Binding BankName}"/>
            <DataGridTextColumn Header="Bank Name" Binding="{Binding OwnerName}"/>
            <DataGridTextColumn Header="Bank Name" Binding="{Binding Account}"/>
        </DataGrid.Columns>
</DataGrid>

例如,我有银行、所有者和账户表。我如何才能在 Accounts 表中显示所有者或银行名称,而不是在 DataGrid 中显示其 ID?

我假设你有3个表,这些表是由外键引用的。当你从数据库中检索它们时,你应该首先JOIN它们,然后就可以很容易地创建你的视图。

© www.soinside.com 2019 - 2024. All rights reserved.