我想知道如何在同一个wpf数据网格中使用来自更多Sql Compact数据库的两个不同的表。我目前有两个表,Accounts和AccountType。在帐户中有一个外键将其链接到AccountType,其中它是该类型的ID号。我还在帐户中有一个字段将其链接到父帐户(本质上是另一个帐户ID的外键)。下面是我必须将datagrid绑定到Accounts表的wpf。
<Window.Resources>
<my:MyAccountantDBDataSet x:Key="myAccountantDBDataSet" />
<CollectionViewSource x:Key="accountsViewSource" Source="{Binding Path=Accounts, Source={StaticResource myAccountantDBDataSet}}" />
<CollectionViewSource x:Key="accountTypeViewSource" Source="{Binding Path=AccountType, Source={StaticResource myAccountantDBDataSet}}" />
</Window.Resources>
<DataGrid Background="DimGray" Name="GridAccounts" CanUserAddRows="True" CanUserDeleteRows="True" ItemsSource="{Binding Source={StaticResource accountsViewSource}}" AutoGenerateColumns="False">
<DataGrid.Columns>
<DataGridTextColumn Header="Name" Binding="{Binding Path=AccountName}"/>
<DataGridTextColumn Header="Description" Binding="{Binding Path=AccountDesc}" />
<DataGridTextColumn Header="Number" Binding="{Binding Path=AccountNumber}"/>
<DataGridTextColumn Header="Type" />
<DataGridTextColumn Header="Parent Account" />
</DataGrid.Columns>
</DataGrid>
我想要做的是将Type列绑定到AccountType表并显示Type Name,而不是Type id。此外,对于父帐户,同样的想法,我不想显示身份证号码,而是显示帐户名称,如果它有父帐户。我怎么能对这两列做到这一点?
答案 0 :(得分:2)
您是否可以创建一个连接数据库中两个表的视图,然后从C#查询视图? 这样,所有处理都在数据库上完成,并且比您的应用程序更有效。