0

Windowsフォームのリストボックスで選択したアイテムに関する情報を取得できません。「PersonID」と「FirstName」を持つ「Persons」が設定されたコレクションがあります。「PersonID」をリストに表示したくないのですが、人の名前だけが表示されますが、リストから人を選択すると、IDが何であるかをどのように知ることができますか?

    public int PersonID { get; set; }
    public string FirstName { get; set; }

コレクション内の「FirstName」を比較できることは知っていますが、名前が他の人と同じである場合は十分ではありません。どうすればこれを解決できますか?

4

2 に答える 2

1

ListBoxコントロールのDisplayMember /ValueMemberプロパティを使用するか、PersonクラスのToString()メソッドをオーバーライドして人物の名前を返すこともできます。

この場合、人物の名前のみが表示されますが、ListBox.SelectedItem()を呼び出すと、完全なPersonインスタンスが返されます。

于 2012-04-10T08:49:00.553 に答える
0

または、listviewを使用できます

listView1.Items.Add("Name").SubItems.Add("ID");

もっと簡単になります

于 2012-04-10T09:16:08.890 に答える