DataGridに表示しているBindingList(T)があります。ListChangedイベントを監視しており、 ListChangedイベントが呼び出されたときにさまざまなアクションを実行しています。
イベントのListChangeType引数をチェックして、リストがどのように変更されたかをチェックし、それに応じて応答しています。ただし、ListChangedイベントタイプItemMovedがあることに気付きました。
アイテムをリストの上下に移動するための「上に移動」と「下に移動」のボタンがあります。しかし、これらは実際には選択されたアイテムを削除し、それをより高い位置またはより低い位置に再挿入しています。
ただし、リスト内のアイテムを移動するように見えるBindingList(T)のメソッドは表示されません。それで、私は何かが足りないのですか、それともItemMovedタイプのListChangedイベントを引き起こすBindingList内のアイテムを移動する方法がありませんか?
void FloorCollection_ListChanged(object sender, ListChangedEventArgs e)
{
if (e.ListChangedType == ListChangedType.ItemAdded)
{
//DO STUFF
}
else if (e.ListChangedType == ListChangedType.ItemDeleted)
{
//DO STUFF
}
else if (e.ListChangedType == ListChangedType.ItemMoved)
{
//HOW DO I GET THIS CODE TO RUN?
}
else if (e.ListChangedType == ListChangedType.ItemChanged)
{
//DO STUFF
}
}