Повторюсь, c# в плане UI привязан к windows , QT привязан к с++ и к тем языкам,где есть для него обертки. В питоне есть обертка. У типизированных языков есть как некоторые преимущества перед скриптовыми, так и недостатки. Попробуйте и то и то, по ходу решите.
Для трех кнопок мне кажется можно и HTML+JS освоить.
Мне кажется , тут как раз стоит попробовать разные варианты, если некуда не спешите.
Maks Burkov:
Что-то не припоминаю, когда мы успели перейти на 'ты'. https://tomcat.apache.org/tomcat-5.5-doc/servletap...
Тут написано, когда нужно использовать цепочку.
У меня подозрение,что вы фильтр не по назначению используете. Каша получилась.
Фильтр здесь нужен, но не в такой реализации.
inbider: Импортировать можно,но нужно осознать как работает импорт. Есть готовый пакет tools,в него невозможно импортировать что угодно.Можно сделать другой пакет и из него импортировать принудительно в tools.
GrayhairedSamuray: И там и там - проще ВЕБ вариант.
electron nwjs и т.д.
Серверная часть может быть написана на чем угодно.
Python nodejs и еще очень много вариантов.(кросс платформенных)
C# пока что является частично кросс платформенным. Есть mono и core .
Если не являетесь заядлым фанатом .NET ,то смысла большого нет браться за c#.
Роман: event EventName не даст список делегатов,нужна рефлексия. А при использовании рефлексии и однопоточном коде,можно после подписки извлечь ссылку на последнюю подписку.
Это опять же хранение ссылки,которую можно сохранить без "хаков"
Роман: Что-то я не вижу там запрет на сохранение ссылки.Вижу лишь утверждение, что операция -= для сгенерированного заново анонимного делегата не даст нужно эффекта, но есть другой метод.
Для трех кнопок мне кажется можно и HTML+JS освоить.
Мне кажется , тут как раз стоит попробовать разные варианты, если некуда не спешите.