AngleSharp by Florian Rappl

<PackageReference Include="AngleSharp" Version="0.8.2" />

 HashChangedEvent

public class HashChangedEvent : Event
Represents a custom event that provides an additional details property.
using AngleSharp.Attributes; using AngleSharp.Extensions; using System.Collections.Generic; namespace AngleSharp.Dom.Events { [DomName("HashChangeEvent")] public class HashChangedEvent : Event { [DomName("oldURL")] public string PreviousUrl { get; set; } [DomName("newURL")] public string CurrentUrl { get; set; } public HashChangedEvent() { } public HashChangedEvent(string type, bool bubbles, bool cancelable, string previousUrl, string currentUrl) { Init(type, bubbles, cancelable, previousUrl, currentUrl); } [DomConstructor] public HashChangedEvent(string type, IDictionary<string, object> eventInitDict = null) : base(type, eventInitDict) { PreviousUrl = (eventInitDict.TryGet("oldURL") ?? string.Empty).ToString(); CurrentUrl = (eventInitDict.TryGet("newURL") ?? string.Empty).ToString(); } [DomName("initHashChangedEvent")] public void Init(string type, bool bubbles, bool cancelable, string previousUrl, string currentUrl) { Init(type, bubbles, cancelable); Stop(); PreviousUrl = previousUrl; CurrentUrl = currentUrl; } } }