2011-01-07 5 views
0

私はここに新しいので、これは私の質問のための間違ったセクションの場合は私を許してください。私の問題は、データグリッドにデータセットの内容を取り込むことができないことです。最後の数日を探してこれを解決しようと思ったので、私はあきらめて、ここで試してみると思いました。 私はVs 2010 VB.Netを使用しています。これはWPFアプリケーションです コードからわかるように、私はこれにはとても新しいので、改善のための提案は大歓迎です。ビジュアライザーを介してデータセットにデータが入力されていることがわかります。結果を表示するデータグリッド「dgBOM」があります。私の検索でよく使われる解決策は、 '.DataSource'を追加することでしたが、 '。 dgBOMの後にDatasourceオプションはありません。データテーブルからWPF Datagridを取り込むにはどうすればよいですか?

ご協力いただければ幸いです。

ありがとうございます。

コード:私はDataReaderオブジェクトとすべてのことをあきらめてい

Public Sub Connect() 
    Dim cn As OleDbConnection 
    Dim cmd As OleDbCommand 
    Dim dr As OleDbDataReader 
    Dim ds As DataSet 
    Dim da As OleDbDataAdapter 
    Dim dt As DataTable 
    Dim drow As DataRow 
    Dim PartColumn As DataColumn 
    Dim CostColumn As DataColumn 
    dt = New DataTable("BOM") 
    ds = New DataSet("BOM") 
    PartColumn = New DataColumn("PartNo") 
    CostColumn = New DataColumn("Cost") 
    da = Nothing 
    cn = Nothing 
    dr = Nothing 
    Try 
     cn = New OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0; Data Source=\\Ls-wtgl834\share\Adrian\PriceLists\WAP-PriceLists.mdb;User ID=Admin") 
     cn.Open() 
     cmd = New OleDbCommand("select * from Inventory", cn) 
     dr = cmd.ExecuteReader 
     da = New OleDbDataAdapter(cmd) 
     dt.Columns.Add(PartColumn) 
     dt.Columns.Add(CostColumn) 
     While dr.Read() 
      If dr(0) = FBladeExtNo Then 
       FrontBladeCost = dr(1) 
       drow = dt.NewRow() 
       drow("PartNo") = FBladeExtNo 
       drow("Cost") = FrontBladeCost 
       dt.Rows.Add(drow) 
       ds.Tables.Add(dt) 
       Exit While 
      End If 
     End While 
     dgBOM.ItemsSource = ds 
    Catch 
    End Try 
    dr.Close() 
    cn.Close() 
End Sub 

答えて

0

。数年前に私が変更の追跡と並行性と関係追跡のためのすべてのロジックを提供しなければならなかったプログラムを書いた後、それは時間がかかりすぎるので私は手を振った。

今日私はO/RMフレームワークを使用しています。オブジェクト/関係マッピングです。現在、Entity Framework(私の個人的に好まれるフレームワーク)とNHibernate(もともとJavaのために書かれていましたが、.NETのために移植されました)の2つは大きなものでした。これらのフレームワークを使用すると、データベーステーブルを.NETクラスにマップできます。 Visual Studio 2010のEFを使用すると、Model-FirstとDatabase-Firstの開発を行うことができます。Model-Firstでは、自分で作成したものとツールで生成したもののどちらを使用するかを示します(Entity Frameworkのケースでは

)あなたのクラスをお互いに関連させたい(例えば、Addresses、Phone Numbers、Eventsの集合を持つCustomerクラス)、そのデータを格納するデータベースを生成するデータベースとは逆です。データベース構造を反映したモデルを作成するために、接続文字列の作成、エンティティの変更の追跡、並行処理を行い、私の意見では素早く生成された素敵なオブジェクトのデータを表示します。私自身の手よりもデータ検索とオブジェクト集団を実行しました。

WPFは、データバインディング機能を備えており、DataReadersおよびDataAdapterよりもこれらのデータオブジェクト(ここではエンティティと呼ぶだけです)に向けて機能します。あなたが右に飛び込みたいのであれば、EFを使い始めるには少しMicrosoft videoです。また、彼らはそこにいくつかの良いものを持っているので、WindowsClient.netを確認してください。

その後、EntityFrameworkのハングアップを取得したら、MVVMデザインパターンをチェックしてください。

関連する問題