C#-ListBox DataSourceプロパティとArrayListのバインド
-
03-07-2019 - |
質問
KeyValuePair <!> lt; string、string <!> gt;を含むArrayListを作成しました。オブジェクト。上記のArrayListにあるすべてのデータを同時にコピーして、繰り返しによってそれらを埋める必要がないように、そのリストにバインドしたいListBoxがあります。
私はDelphiプログラマであり、DelphiではListViewコントロールを使用し、OwnerDataプロパティをtrueに設定してから、OnDataイベントを使用して、指定されたアイテム(指定されたインデックス)に配列アイテムのデータを表示します同じインデックスを持つ。 OnDataメソッドは、現在表示されているアイテムをパラメーターとして提供するので、たとえばそのIndex、CaptionおよびSubItemsプロパティ。そのインデックスに基づいて、同じインデックスを持つ配列アイテムのデータをアイテムに表示させることができます。その配列が変更された場合、配列の長さが変更された場合、ListViewを更新するか、Countプロパティを設定するだけで十分です。
ListBoxコントロールを使用してC#で同じ目標を達成する方法は? listValue.DataSourceプロパティを、KeyValuePairsを含むmyArrayListに設定します。ここで、listBoxにKeyValuePairsオブジェクトのキーを表示したいと思います。
解決
.NETリストボックスにはこの機能が組み込まれています。すでにDataSource
プロパティを設定しているため、リスト内のキーのみを表示するには、次を設定します。
listBox.DisplayMember = "Key";
所属していません StackOverflow