私はアンドレスマネージャーを持っています。リストビューで表示する必要があるのは、10 エントリのみです。すでに沸騰している脳はそれを行う方法です。
このコードはビューリストのすべてのレコードに追加されますが、最後の 10 件だけが必要です。
lvUndoStack.Items.Clear();
var list = new List<object>();
foreach (var command in UndoRedoManager.UndoCommands)
{
list.Insert(0, command.ToString());
}
lvUndoStack.Items.AddRange(list.ToArray());
lvUndoStack.SelectedIndex = lvUndoStack.Items.Count - 1;
indexSeletedItemUndoStack = lvUndoStack.SelectedIndex;
list = new List<object>();
foreach (var command in UndoRedoManager.RedoCommands)
{
list.Insert(0, command.ToString());
}
lvUndoStack.Items.AddRange(list.ToArray());
重要- 使用されていない linq
アップデート:
例:
undo1
undo2
undo3
undo4
undo5
undo6
undo7
redo1
redo2
redo3
redo4
redo5
10 が必要です。元に戻す 4 を開始する場合は、最後または最大 10 のすべてを表示する必要があります。