これは、アイテムをリストの1つ下に移動するためのコードです。
if (this.folderImages.SelectedIndex > -1 && this.folderImages.SelectedIndex < this.folderImages.Items.Count - 1)
{
string imageName = this.folderImages.SelectedItem as string;
int index = this.folderImages.SelectedIndex;
this.folderImages.Items.RemoveAt(index);
this.folderImages.Items.Insert(index + 1, imageName);
this.folderImages.SelectedIndex = index + 1;
}
これを1つ上に移動するには、次のようにします。
if (this.folderImages.SelectedIndex > 0)
{
string imageName = this.folderImages.SelectedItem as string;
int index = this.folderImages.SelectedIndex;
this.folderImages.Items.RemoveAt(index);
this.folderImages.Items.Insert(index - 1, imageName);
this.folderImages.SelectedIndex = index - 1;
}
folderImages
はListBox
もちろんなので、リストはListBox.ObjectCollection
でなくですがList<T>
、継承元であるIList
ため、同じように動作します。これは役に立ちますか?
もちろん、前者は選択したアイテムがリストの最後のアイテムでない場合にのみ機能し、後者は選択したアイテムが最初のアイテムでない場合にのみ機能します。