2

Visual Studio 2010 で Windows フォーム アプリケーションを作成しています。'ResearcherInfo' テーブルを持つ Access データベースがあります。

私のウィンドウフォームには、このテーブルの列名「研究者名」の内容が取り込まれるリストボックスがあります。

ただし、このテキスト ボックスの選択した項目を取得しようとすると、アクセス方法に応じて、null 値または System.Data.DataRowView のみが返されます。

私が試してみました

    string name = projectmembers_lst.SelectedItem.ToString();

「projectmembers_lst」という単語の上にマウスを置くとデバッグ中に、projectmembers_lst = {SelectedItem = "Jerome"} が正しく表示されます

しかし、文字列「name」にカーソルを合わせると、「name = "System.Data.DataRowView"」と表示されます

私も配列にコピーしようとしました

    foreach (Object selecteditem in projectmembers_lst.SelectedItems)
    {

        object[] objCollection = new object[projectmembers_lst.SelectedItems.Count];

        projectmembers_lst.SelectedItems.CopyTo(objCollection, 0);

        MessageBox.Show(objCollection[0] as string);
    }

選択したアイテムを取得するものは何もありません。ここで何が問題なのかわかりません。

リスト ボックスへの入力:

1) アクセス テーブル 'ResearcherInfo' を追加しました。Web フォーム アプリケーションのデータ ソースとして。

2) リストボックスのプロパティの [データソース] タブで、このテーブルをリンクし、テーブルの列名「研究者名」としてリストボックスの表示メンバーと値メンバー プロパティを指定しました。

したがって、基本的に私のリストボックスには、研究者情報テーブルの研究者名が表示されます。添付はスナップショットです。ここに画像の説明を入力

4

1 に答える 1

0

どのように入力しているかを確認しなければ、推測するのは困難です。

try ((objCollection[0] as DataViewRow)[0] as string

于 2013-04-15T02:45:09.067 に答える