2012-04-03 15 views
0

Microsoft Acessデータベースに接続されているビジュアルスタジオプロジェクトにデータセットを作成しました。テーブルの特定の列の値をコンボボックスの項目(つまりドロップダウンボックス)に入力したいとします。このために、私は "empnames"と呼ばれるテーブル・アダプターと、必要な列だけを選択するメソッド "GetDataByName()"を作成しました。

最初に試しました
comboBox1.ItemsSource = empnames.GetDataByName()。ToString();
このため、テーブル名の文字をコンボボックスの別の項目として取得します。たとえば、テーブル名がemp_dataの場合、コンボボックスには 'e'、 'm'、 'p'、 'd'、 'a'、 't'、 'a'の8つの項目があります。 適切な結果を得るために手伝ってください。データセットの列からデータを取得してコンボボックスの項目を取り込む

おかげ

コード:

private void Window_Loaded(object sender, RoutedEventArgs e) { 
SampleDataSetTableAdapters.Emp_dataTableAdapter empnames = new SampleDataSetTableAdapters.Emp_dataTableAdapter(); 
comboBox1.ItemsSource = empnames.GetDataByName(); 
} 


これは、コンボボックスの項目を移入するメソッドのコードです。 GetDataByName()は、テーブルアダプタクエリ構成ウィザードを使用して設計されています。戻り値の型はデータテーブルです。

+0

あなたはItemSourceに文字列を代入している - あなたは、コレクションを割り当てる必要があります。あなたは8アイテムを手に入れていますか?いくつかのコードを投稿してください。 – SkonJeet

+0

列の値からコレクションを作成するにはどうすればよいですか? – Abhilash

+0

GetDataByName()は何を返しますか?リスト?私の最初の質問に対するあなたの答えに応じて、ToString()拡張を削除する場合があります。 – SkonJeet

答えて

2

DataTableItemsSourceに割り当て、DisplayMemberPathに表示する列の名前を設定します。

comboBox1.ItemsSource = empnames.GetDataByName(); 
comboBox1.DisplayMemberPath = "Name"; // assuming there is a "Name" column 
+0

コードでいくつかの例を挙げることはできますか? – Abhilash

+0

@Abhilash、私の更新された回答を参照してください –

+0

うわー。出来た。ご協力いただきありがとうございます。 :) – Abhilash

関連する問題