1

私は、VB.NETで3層のWindows Forms DBアプリケーションを使用しています。私はVS 2005を使用しています。DataGridViewとDataSource:外部キーでリンクされたフィールドを簡単に表示する方法はありますか?

DataGridViewのテーブルにレコードを表示したいと思います。 DBクラスに話しビジネスクラスへのデータソースを結合することによってであるように私はすでにレコードを表示することができます

Dim assetList as List(Of Asset) 
assetList = DB_Asset.GetAssetListOrderByID_Asset 
AssetDataGridView.DataSource = assetList 

「資産」は私のビジネスクラスであり、そして「DB_Assetは」DBを照会私のDBクラスですassetListを返す。

は今、資産、メンバーはこのようなものがあります。

Private m_ID_Asset As Integer 
Private m_CategoryID As Integer 
Private m_CustodianID As Integer 
Private m_ManufacturerID As Integer 
Private m_SignedOutToID As Integer 
Private m_DefaultLocationID As Integer 
Private m_CurrentLocationID As Integer 
Private m_DateAcquired As Date 
Private m_DateEntered As Date 
Private m_EnteredByID As Integer 

メートルを_ ID _資産は、DB内の資産のテーブルの主キーが含まれ、フォームm_XXXXXXXXXIDの他のすべては、別の外部キーが含まれていますDB内のテーブル。

基本的に私が今得するのは、たくさんの数字を持つ行です。これは、資産の表にあります正確に何を:私はそれらの外部キーのすべてとにリンクされたテキストフィールドを表示する簡単な方法があります場合、私は知りたいのですがどのような

ID_Asset CategoryID CustodianID ManufacturerID SignedOutToID 
    1   17   23   14    5 

は次のとおりです。

ID_Asset CategoryName CustodianName Manufacturer SignedOutTo 
    1  Soda - Diet  John  Coca-Cola  Fred 

ここでの経験をお持ちの方はどんなトリックですか?

ありがとうございます!

答えて

2

List(Of Asset)をお持ちの場合は、基本的にクエリDB_Asset.GetAssetListOrderByID_Assetを変更して、そこで必要な結合を行い、そのプロパティから値をassetListに割り当てるようにします。

m_CustomerName As StringのようなものをAssetクラスに追加したい場合は、取得する他のものと一緒にデータを配置します。

あなたがAssetクラスを変更できない場合は、バインドする前にそれらの文字列をすべて取得することができます。

+0

OK、それは私の心を横切っていました。私はDataGridViewのメソッドやプロパティのページでページを見て、そこに不思議なDataGridViewDoWhatJohnWWantsがあるかもしれないと考えました。 ;) – John

+0

これはうまくいきました。ありがとう! – John

関連する問題