| File: System\ComponentModel\Design\UndoEngine.UndoUnit.RenameUndoEvent.cs | Web Access |
| Project: src\winforms\src\System.Windows.Forms.Design\src\System.Windows.Forms.Design.csproj (System.Windows.Forms.Design) |
// Licensed to the .NET Foundation under one or more agreements. // The .NET Foundation licenses this file to you under the MIT license. namespace System.ComponentModel.Design; public abstract partial class UndoEngine { protected partial class UndoUnit { private sealed class RenameUndoEvent : UndoEvent { private string? _before; private string? _after; /// <summary> /// Creates a new rename undo event. /// </summary> public RenameUndoEvent(string? before, string? after) { _before = before; _after = after; } /// <summary> /// Simply undoes a rename by setting the name back to the saved value. /// </summary> public override void Undo(UndoEngine engine) { IComponent? comp = engine._host.Container.Components[_after]; if (comp is not null) { engine.ComponentChangeService.OnComponentChanging(comp, null); comp.Site!.Name = _before; (_after, _before) = (_before, _after); } } } } }