2011-10-01 62 views
0

我想知道我怎麼就能夠在同一個WPF DataGrid中使用兩個不同的表從多個SQL Compact數據庫。我目前有兩個表格,Accounts和AccountType。帳戶中有一個外鍵將其鏈接到該類型的ID號碼中的AccountType。我在帳戶中也有一個字段將其鏈接到父帳戶(實質上是另一個帳戶的ID的外鍵)。下面是我必須將數據網格綁定到帳戶表的wpf。綁定兩個數據庫表到同一Datagrid的

<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> 

我想什麼做的,就是綁定類型列於表ACCOUNTTYPE並顯示類型名稱,而不是類型ID。此外,同樣的想法的家長帳戶,我不希望顯示的ID號,而是帳戶名稱,如果它有一個父帳戶。我怎樣才能做到這兩列?

+0

等待,這可以很容易地通過'JOIN'ING的表來實現。你可以閱讀[註冊](http://www.w3schools.com/sql/sql_join.asp)■ –

回答

2

你能在數據庫中創建連接兩個表的視圖,然後查詢從C#有何看法? 這樣,所有的處理都在數據庫上完成,可能比你的應用更加高效。

+0

感謝凱文。我知道所有關於加入,我只是想知道是否有不同的約束方式。 –

相關問題