1

選択したアイテムをリストビューのメッセージボックスに表示しようとしているので、次のコードを使用します

    private void lstMovie_SelectedIndexChanged(object sender, EventArgs e)
    { MessageBox.Show(lstMovie.FocusedItem.Text);}

初めては正常に動作しますが、2回目に別のアイテムを選択しようとすると、例外がスローされます。オブジェクト参照がオブジェクト インスタンスに設定されていません。

4

2 に答える 2

3

これを試して:

private void lstMovie_SelectedIndexChanged(object sender, EventArgs e)
{
  if(lstMovie.SelectedItems.Count > 0)
  MessageBox.Show(lstMovie.SelectedItems[0]); //Will select first selected item.
}
于 2012-09-20T20:11:53.270 に答える
1

たぶん、 ListView.FocusedItemプロパティの代わりにListView.SelectedItemsプロパティを使用する必要があります

ListView.FocusedItemプロパティ

アイテムはフォーカスレチクルを表示しているアイテムである場合もありますが、実際にはリストビューで選択されているアイテムではない場合があります。SelectedItemsまたはSelectedIndicesプロパティを使用して、ListViewコントロールで選択されたアイテムを取得します。FocusedItemプロパティは必ずしも選択されているとは限りません。

于 2012-09-20T20:13:30.303 に答える