home.social

#wpf — Public Fediverse posts

Live and recent posts from across the Fediverse tagged #wpf, aggregated by home.social.

fetched live
  1. After reading about Celly (#Charp Implementation of Googles CEL) in

    dotnet.libhunt.com/newsletter/

    I have made me a converter accepting CEL expressions for #WPF:

    github.com/wgross/wpf-demo/blo

    By using CEL expression in XAML code I can remove some of my view model properties i made for formatting data for binding;:

  2. After reading about Celly (#Charp Implementation of Googles CEL) in

    dotnet.libhunt.com/newsletter/

    I have made me a converter accepting CEL expressions for :

    github.com/wgross/wpf-demo/blo

    By using CEL expression in XAML code I can remove some of my view model properties i made for formatting data for binding;:

  3. After reading about Celly (#Charp Implementation of Googles CEL) in

    dotnet.libhunt.com/newsletter/

    I have made me a converter accepting CEL expressions for #WPF:

    github.com/wgross/wpf-demo/blo

    By using CEL expression in XAML code I can remove some of my view model properties i made for formatting data for binding;:

  4. #WPF, "AutomationProperties.LabeledBy" overwrites and hides TextBlock.Text.
    Good job.

    #Microsoft #DotNet #CSharp

  5. #WPF, "AutomationProperties.LabeledBy" overwrites and hides TextBlock.Text.
    Good job.

    #Microsoft #DotNet #CSharp

  6. #WPF, "AutomationProperties.LabeledBy" overwrites and hides TextBlock.Text.
    Good job.

    #Microsoft #DotNet #CSharp

  7. #WPF, "AutomationProperties.LabeledBy" overwrites TextBlock.Text.
    Good job.

    #Microsoft #DotNet #CSharp

  8. #WPF, "AutomationProperties.LabeledBy" overwrites TextBlock.Text.
    Good job.

    #Microsoft #DotNet #CSharp

  9. Hot Reload, который не заработал. Инкрементальная компиляция в браузере своими руками

    В прошлой статье я рассказывал, как мы делаем онлайн IDE для .NET — дизайн, компиляция и запуск приложений происходят прямо в браузере, без сервера. Проект живёт по адресу xaml.io . С тех пор мы много чего добавили, и в какой-то момент у нас стало получаться загружать в IDE довольно крупные .NET проекты — десятки XAML, сотни C# файлов, несколько референсных проектов и пакетов NuGet. Одна из главных возможностей — это визуальный UI-дизайнер пользовательских приложений. И у него есть особенность: чтобы дизайнер вообще что-то показывал, приложение должно быть скомпилировано, причём в актуальном состоянии. Не «когда-нибудь», а после каждой правки. Открыли как-то в IDE один реальный проект (FamilyShow — классическое демонстрационное WPF-приложение), поправили одну строку в .cs и 84 секунды наблюдали за анимацией прогресса. С таким UX никакой интерактивный дизайн невозможен. Сейчас та же правка занимает 5 секунд, а правка XAML-разметки на типичной странице — меньше секунды. В этой статье — как мы к этому пришли, и какие сюрпризы нам приготовили по дороге Roslyn, OpenSilver, WASM и наш собственный код.

    habr.com/ru/articles/1063040/

    #opensilver #wasm #c# #net #wpf #ide #web

  10. Hot Reload, который не заработал. Инкрементальная компиляция в браузере своими руками

    В прошлой статье я рассказывал, как мы делаем онлайн IDE для .NET — дизайн, компиляция и запуск приложений происходят прямо в браузере, без сервера. Проект живёт по адресу xaml.io . С тех пор мы много чего добавили, и в какой-то момент у нас стало получаться загружать в IDE довольно крупные .NET проекты — десятки XAML, сотни C# файлов, несколько референсных проектов и пакетов NuGet. Одна из главных возможностей — это визуальный UI-дизайнер пользовательских приложений. И у него есть особенность: чтобы дизайнер вообще что-то показывал, приложение должно быть скомпилировано, причём в актуальном состоянии. Не «когда-нибудь», а после каждой правки. Открыли как-то в IDE один реальный проект (FamilyShow — классическое демонстрационное WPF-приложение), поправили одну строку в .cs и 84 секунды наблюдали за анимацией прогресса. С таким UX никакой интерактивный дизайн невозможен. Сейчас та же правка занимает 5 секунд, а правка XAML-разметки на типичной странице — меньше секунды. В этой статье — как мы к этому пришли, и какие сюрпризы нам приготовили по дороге Roslyn, OpenSilver, WASM и наш собственный код.

    habr.com/ru/articles/1063040/

    #opensilver #wasm #c# #net #wpf #ide #web

  11. Hot Reload, который не заработал. Инкрементальная компиляция в браузере своими руками

    В прошлой статье я рассказывал, как мы делаем онлайн IDE для .NET — дизайн, компиляция и запуск приложений происходят прямо в браузере, без сервера. Проект живёт по адресу xaml.io . С тех пор мы много чего добавили, и в какой-то момент у нас стало получаться загружать в IDE довольно крупные .NET проекты — десятки XAML, сотни C# файлов, несколько референсных проектов и пакетов NuGet. Одна из главных возможностей — это визуальный UI-дизайнер пользовательских приложений. И у него есть особенность: чтобы дизайнер вообще что-то показывал, приложение должно быть скомпилировано, причём в актуальном состоянии. Не «когда-нибудь», а после каждой правки. Открыли как-то в IDE один реальный проект (FamilyShow — классическое демонстрационное WPF-приложение), поправили одну строку в .cs и 84 секунды наблюдали за анимацией прогресса. С таким UX никакой интерактивный дизайн невозможен. Сейчас та же правка занимает 5 секунд, а правка XAML-разметки на типичной странице — меньше секунды. В этой статье — как мы к этому пришли, и какие сюрпризы нам приготовили по дороге Roslyn, OpenSilver, WASM и наш собственный код.

    habr.com/ru/articles/1063040/

    #opensilver #wasm #c# #net #wpf #ide #web

  12. Как я превратил Real‑ESRGAN и FFmpeg в потоковый Windows‑апскейлер без гигантских временных папок

    Апскейлинг одного изображения через Real-ESRGAN обычно не вызывает особых проблем: выбираем модель, запускаем обработку и получаем результат. Но при работе с видео и большими наборами файлов быстро появляются дополнительные задачи: декодирование и сборка видео, очередь рендера, выбор видеокарты, обработка ошибок, восстановление прерванных заданий, зависимости вроде FFmpeg и понятный интерфейс для всего этого. Мне хотелось получить обычное Windows-приложение, в которое можно перетащить видео, изображения или целую папку, выбрать параметры и оставить обработку выполняться без ручной работы с консольными командами. Так появился UltraFrame AI — бесплатное приложение с открытым исходным кодом для пакетного апскейлинга видео и изображений с помощью Real-ESRGAN.

    habr.com/ru/articles/1059520/

    #realesrgan #upscaling #wpf #ffmpeg #vulkan #dotnet #open_source

  13. Как я превратил Real‑ESRGAN и FFmpeg в потоковый Windows‑апскейлер без гигантских временных папок

    Апскейлинг одного изображения через Real-ESRGAN обычно не вызывает особых проблем: выбираем модель, запускаем обработку и получаем результат. Но при работе с видео и большими наборами файлов быстро появляются дополнительные задачи: декодирование и сборка видео, очередь рендера, выбор видеокарты, обработка ошибок, восстановление прерванных заданий, зависимости вроде FFmpeg и понятный интерфейс для всего этого. Мне хотелось получить обычное Windows-приложение, в которое можно перетащить видео, изображения или целую папку, выбрать параметры и оставить обработку выполняться без ручной работы с консольными командами. Так появился UltraFrame AI — бесплатное приложение с открытым исходным кодом для пакетного апскейлинга видео и изображений с помощью Real-ESRGAN.

    habr.com/ru/articles/1059520/

    #realesrgan #upscaling #wpf #ffmpeg #vulkan #dotnet #open_source

  14. Как я превратил Real‑ESRGAN и FFmpeg в потоковый Windows‑апскейлер без гигантских временных папок

    Апскейлинг одного изображения через Real-ESRGAN обычно не вызывает особых проблем: выбираем модель, запускаем обработку и получаем результат. Но при работе с видео и большими наборами файлов быстро появляются дополнительные задачи: декодирование и сборка видео, очередь рендера, выбор видеокарты, обработка ошибок, восстановление прерванных заданий, зависимости вроде FFmpeg и понятный интерфейс для всего этого. Мне хотелось получить обычное Windows-приложение, в которое можно перетащить видео, изображения или целую папку, выбрать параметры и оставить обработку выполняться без ручной работы с консольными командами. Так появился UltraFrame AI — бесплатное приложение с открытым исходным кодом для пакетного апскейлинга видео и изображений с помощью Real-ESRGAN.

    habr.com/ru/articles/1059520/

    #realesrgan #upscaling #wpf #ffmpeg #vulkan #dotnet #open_source

  15. От идеи до рабочего приложения: создание ProcessTimeWatcher на C# и WPF

    Сколько времени на самом деле мы проводим в разных приложениях? Кажется, что открыл IDE на пару минут, проверил браузер — и вернулся к работе. Но спустя несколько часов становится сложно понять, куда ушло это время. Существующие трекеры активности уже давно решают эту задачу, но мне было интересно разобраться, как они работают внутри: как Windows определяет активное окно, как получить информацию о процессе и как правильно считать время использования приложения. Так появился ProcessTimeWatcher — WPF-приложение на C#, которое отслеживает активное окно пользователя и собирает статистику использования программ. В статье разберём, как устроен этот инструмент, какие сложности возникли при работе с Windows API и какие решения были приняты во время разработки.

    habr.com/ru/articles/1059148/

    #C# #wpf #net #windows_api #winapi #open_source #procces_monitoring #xaml #tracker #time_tracker

  16. От идеи до рабочего приложения: создание ProcessTimeWatcher на C# и WPF

    Сколько времени на самом деле мы проводим в разных приложениях? Кажется, что открыл IDE на пару минут, проверил браузер — и вернулся к работе. Но спустя несколько часов становится сложно понять, куда ушло это время. Существующие трекеры активности уже давно решают эту задачу, но мне было интересно разобраться, как они работают внутри: как Windows определяет активное окно, как получить информацию о процессе и как правильно считать время использования приложения. Так появился ProcessTimeWatcher — WPF-приложение на C#, которое отслеживает активное окно пользователя и собирает статистику использования программ. В статье разберём, как устроен этот инструмент, какие сложности возникли при работе с Windows API и какие решения были приняты во время разработки.

    habr.com/ru/articles/1059148/

    #C# #wpf #net #windows_api #winapi #open_source #procces_monitoring #xaml #tracker #time_tracker

  17. От идеи до рабочего приложения: создание ProcessTimeWatcher на C# и WPF

    Сколько времени на самом деле мы проводим в разных приложениях? Кажется, что открыл IDE на пару минут, проверил браузер — и вернулся к работе. Но спустя несколько часов становится сложно понять, куда ушло это время. Существующие трекеры активности уже давно решают эту задачу, но мне было интересно разобраться, как они работают внутри: как Windows определяет активное окно, как получить информацию о процессе и как правильно считать время использования приложения. Так появился ProcessTimeWatcher — WPF-приложение на C#, которое отслеживает активное окно пользователя и собирает статистику использования программ. В статье разберём, как устроен этот инструмент, какие сложности возникли при работе с Windows API и какие решения были приняты во время разработки.

    habr.com/ru/articles/1059148/

    #C# #wpf #net #windows_api #winapi #open_source #procces_monitoring #xaml #tracker #time_tracker

  18. I my daily work I'm maintaining a #dotnet software containing ~5K unit tests including #WPF view model tests.

    Most of the work they do is #async, started by 'AsyncRelayCommands'. This means waiting and asserting state changes is also async. Therefore #xunit tests are waiting often for `ManualResetEventSlim' to fire triggered by 'INotifyPropertyChanged' events.

    I have wrapped this nicely in some lines of code which will result in test code being easier on the eyes in my opinion. Maybe this is useful someone else?

    For details see:

    github.com/wgross/property-cha

  19. I my daily work I'm maintaining a #dotnet software containing ~5K unit tests including #WPF view model tests.

    Most of the work they do is #async, started by 'AsyncRelayCommands'. This means waiting and asserting state changes is also async. Therefore #xunit tests are waiting often for `ManualResetEventSlim' to fire triggered by 'INotifyPropertyChanged' events.

    I have wrapped this nicely in some lines of code which will result in test code being easier on the eyes in my opinion. Maybe this is useful someone else?

    For details see:

    github.com/wgross/property-cha

  20. I my daily work I'm maintaining a software containing ~5K unit tests including view model tests.

    Most of the work they do is , started by 'AsyncRelayCommands'. This means waiting and asserting state changes is also async. Therefore tests are waiting often for `ManualResetEventSlim' to fire triggered by 'INotifyPropertyChanged' events.

    I have wrapped this nicely in some lines of code which will result in test code being easier on the eyes in my opinion. Maybe this is useful someone else?

    For details see:

    github.com/wgross/property-cha

  21. I my daily work I'm maintaining a #dotnet software containing ~5K unit tests including #WPF view model tests.

    Most of the work they do is #async, started by 'AsyncRelayCommands'. This means waiting and asserting state changes is also async. Therefore #xunit tests are waiting often for `ManualResetEventSlim' to fire triggered by 'INotifyPropertyChanged' events.

    I have wrapped this nicely in some lines of code which will result in test code being easier on the eyes in my opinion. Maybe this is useful someone else?

    For details see:

    github.com/wgross/property-cha

  22. I my daily work I'm maintaining a #dotnet software containing ~5K unit tests including #WPF view model tests.

    Most of the work they do is #async, started by 'AsyncRelayCommands'. This means waiting and asserting state changes is also async. Therefore #xunit tests are waiting often for `ManualResetEventSlim' to fire triggered by 'INotifyPropertyChanged' events.

    I have wrapped this nicely in some lines of code which will result in test code being easier on the eyes in my opinion. Maybe this is useful someone else?

    For details see:

    github.com/wgross/property-cha

  23. LibreWPF is a #FOSS cross-platform port of #WPF by @soltes

    Run your existing WPF apps on #Linux and #macOS with almost no changes.

    And alternative to @avaloniaui’s #XPF ?

    github.com/wieslawsoltes/wpf

    #dotnet

  24. LibreWPF is a #FOSS cross-platform port of #WPF by @soltes

    Run your existing WPF apps on #Linux and #macOS with almost no changes.

    And alternative to @avaloniaui’s #XPF ?

    github.com/wieslawsoltes/wpf

    #dotnet

  25. LibreWPF is a #FOSS cross-platform port of #WPF by @soltes

    Run your existing WPF apps on #Linux and #macOS with almost no changes.

    And alternative to @avaloniaui’s #XPF ?

    github.com/wieslawsoltes/wpf

    #dotnet

  26. LibreWPF is a #FOSS cross-platform port of #WPF by @soltes

    Run your existing WPF apps on #Linux and #macOS with almost no changes.

    And alternative to @avaloniaui’s #XPF ?

    github.com/wieslawsoltes/wpf

    #dotnet

  27. LibreWPF is a #FOSS cross-platform port of #WPF by @soltes

    Run your existing WPF apps on #Linux and #macOS with almost no changes.

    And alternative to @avaloniaui’s #XPF ?

    github.com/wieslawsoltes/wpf

    #dotnet

  28. Теплые и влажные Плитки для документов на C#: не проводник

    Не “проводник”, а визуальное пространство документов, что-то ближе к COSMOS (от Waves)-подходу, где файлы живут плитками, имеют вес, цвет, превью, теги, статус и историю. Всем привет. :?*(*%:%=) Ниже разбор, как мы шли от красивых, но тяжёлых плиток к более живому и быстрому интерфейсу на C# И давайте сразу разберемся с плитками (Тут только о плитках)

    habr.com/ru/articles/1053696/

    #C# #WPF #XAML #плитки #документы #интерфейс #UI #виртуализация #превью #Rust

  29. Теплые и влажные Плитки для документов на C#: не проводник

    Не “проводник”, а визуальное пространство документов, что-то ближе к COSMOS (от Waves)-подходу, где файлы живут плитками, имеют вес, цвет, превью, теги, статус и историю. Всем привет. :?*(*%:%=) Ниже разбор, как мы шли от красивых, но тяжёлых плиток к более живому и быстрому интерфейсу на C# И давайте сразу разберемся с плитками (Тут только о плитках)

    habr.com/ru/articles/1053696/

    #C# #WPF #XAML #плитки #документы #интерфейс #UI #виртуализация #превью #Rust

  30. Теплые и влажные Плитки для документов на C#: не проводник

    Не “проводник”, а визуальное пространство документов, что-то ближе к COSMOS (от Waves)-подходу, где файлы живут плитками, имеют вес, цвет, превью, теги, статус и историю. Всем привет. :?*(*%:%=) Ниже разбор, как мы шли от красивых, но тяжёлых плиток к более живому и быстрому интерфейсу на C# И давайте сразу разберемся с плитками (Тут только о плитках)

    habr.com/ru/articles/1053696/

    #C# #WPF #XAML #плитки #документы #интерфейс #UI #виртуализация #превью #Rust

  31. マスク氏の「兆万長者」資産と2021年の飢餓解決提案が再注目

    フランスの左翼議員がマスク氏の富を批判し世界の飢餓を指摘した投稿に対し、2021年のマスク氏の発言「60億ドルで世界飢餓を解決できるなら寄付するが会計を公開せよ」が引用され、7,600以上のいいねを獲得した。この提案は国連世界食糧計画(WFP)の主張への返答で、WFPは計画を公開したがマスク氏は不祥事などを理由に応じなかった。XではNPOの透明性やマスク氏の雇用創出貢献をめぐる議論が広がり、富の再分配と根本解決の重要性が話題

    #ElonMusk #WPF #Tesla

    x.com/i/trending/2065733004375