C# - хранить функцию в списке?
Эй Codeproject,
Я знаю, что это может быть странно. Я создаю свой собственный пользовательский элемент управления, и в настоящее время я нахожусь на стадии, когда я могу, наконец, внедрить некоторые функции. Одна из функций, которую я хочу добавить, - это "отменить " и" повторить", теперь я никогда не делал этого раньше, и мое любопытство взяло верх, когда я подумал об использовании списка, содержащего функции" делегата", чтобы сделать простую функцию отмены-повтора.
Теперь, я не уверен, что делегат-это правильное слово для этого, то, что я в значительной степени пытаюсь сделать, это следующее:
public List<Delegate> Undo { get; set; } private void SetText(int Index, string String) { Text.Insert(Index, String); }
private void RemoveText(index, String) { Undo.Add(SetText(index, string)); }
Я хочу иметь возможность добавить в список "отменить" функцию SetText (Index, "String"), а затем вызвать ее из функции Undo ();.
private void UndoFunction() { Undo[Undo.Count - 1](); Undo.Remove(Undo[Undo.Count - 1]); }
Кто-нибудь знает, возможно ли что-то подобное? Я могу просто найти обходной путь, если это напрямую невозможно, но было бы здорово, если бы это было так.
С Уважением, - Эдди
Что я уже пробовал:
public List<Delegate> Undo { get; set; } private void SetText(int Index, string String) { Text.Insert(Index, String); }