2

Lisboxにデータソースとしてdatatableを提供しました。テーブルのフィールドはID、件名、テキストであり、IDは一意のフィールド(PK)です。ただし、件名はDisplayMemberとして表示されます。

これが私のデータソース提供コードです:

lbTexts.DataSource = mDataSet.Tables["Story"];
lbTexts.DisplayMember = "Subject";

ユーザーが選択した行と一意の値を知りたい。私はそれを10行のコードで見つけました。しかし、私はそれを見つける簡単な方法があることを願っています。

4

3 に答える 3

3

ValueMemberプロパティを使用してIdに設定すると、データセット全体を必要とせずにSelectedValueパラメーターを使用できます。また、リストで選択したインデックスがデータのインデックスと一致しない場合に、再分類エラーが発生しないことが保証されます。

lbTexts.ValueMember = "Id";

// Later
int selectedId = Int32.Parse(lbTexts.SelectedValue);
于 2012-11-15T13:10:35.923 に答える
2

を使用SelectedItemして現在選択されているアイテムを取得し、を使用SelectedValueして値を取得します。

selectedItemの例

String value = lbTexts.SelectedItem.Value;

selectedValueの例:

String txt = lbTexts.SelectedValue.ToString();
于 2012-11-15T12:40:03.647 に答える
2

これを試して、

string value = lbTexts.SelectedItem.Value;
于 2012-11-15T12:42:04.063 に答える