По состоянию на ноябрь 2024 года в EA есть два основных способа использовать Blazor.
До недавнего времени (октябрь 2024) это был единственный вариант. Всё просто: создаёте ауру, добавляете C# Overlay — и готово. EA сама рисует окно на экране и размещает внутри ваш код. В остальном это обычный оверлей: можно задавать условия отображения через триггеры, настраивать цвет, фон и другие параметры.
Вот пара примеров оверлеев:

Сделаем маленький оверлей с кнопкой и счётчиком.


IMPORTANT! Текстовый редактор, используемый в этом оверлее, скоро будет заменён. Поэтому я не буду подробно разбирать его устройство и вместо этого рекомендую обратить внимание на вариант №2 — скрипты.
А теперь к основному варианту. Здесь можно создавать не один-два оверлея, управляемых триггерами, а целую оконную систему, работающую через скрипты. Такие окна могут появляться где угодно и когда угодно, выглядеть как угодно, а EA берёт на себя значительную часть типичной боли WPF или WinForms, особенно вокруг многопоточности.
Посмотрим, как скрипты могут работать с окнами.


var window = GetService<IDialogWindowUnstableScriptingApi>() // get DialogWindow API
.CreateWindow<UserComponent>() //create new window with UserComponent inside
.AddTo(ExecutionAnchors); //destroy when script is stopped
window.WindowStartupLocation = System.Windows.WindowStartupLocation.CenterScreen;
window.ShowDialog();

Это основной интерфейс для работы с диалоговыми окнами. Есть и другие варианты, но сейчас это самый высокоуровневый и безопасный способ: он берёт на себя выгрузку окон при выгрузке ауры, очистку ресурсов и прочие служебные задачи. Название Unstable означает не то, что интерфейс плохой, а то, что он новый и в нём ещё возможны breaking changes. Со временем он станет Stable.