#AvaloniaUI

2025-04-06

I stood up a Mac mini dev workstation to compile my #avaloniaUI app for MacOS. VS Code on MacOS works more than well enough for me. Was focused on Windows until now. Minor design things to fix. Otherwise, it just works! Avalonia is my first choice for #dotnet desktop apps.

2025-03-27

Как мы улучшили скорость работы табличных контролов библиотеки EMX Controls для Avalonia UI

В последнем обновлении нашей кроссплатформенной библиотеки EMX Controls для Avalonia UI мы существенно повысили производительность контролов DataGrid и TreeList. Время создания и отрисовки улучшилось почти в 3 раза, а скорость скроллинга - более чем в 2 раза. В этой статье мы приведем конкретные цифры и подробнее остановимся на подходах, которые позволили нам добиться таких результатов.

habr.com/ru/articles/895016/

#net #avaloniaui #avalonia #crossplatform #eremex #ui #controls #datagrid

b4ux1t3 :trek_ds9_sisko:#1️⃣b4ux1t3@hachyderm.io
2025-03-21

Going live! We have a little guest with us for the start of the stream tonight.

going through my #FeedzApp beta milestone to find some low-hanging fruit I have yet to pick!

twitch.tv/b4ux1t3

#DotNet #Programming # LiveCoding #AvaloniaUI #DevelopInTheOpen

A screenshot of my webcam preview, showing my son, not quite 2, hanging out on stream looking confused.
b4ux1t3 :trek_ds9_sisko:#1️⃣b4ux1t3@hachyderm.io
2025-03-12

Going live! Resuming work on #FeedzApp. Tonight we need to finish the download logic we were working on last week!

twitch.tv/b4ux1t3

#DotNet #LiveCoding #DevelopInTheOpen #AvaloniaUI

b4ux1t3 :trek_ds9_sisko:#1️⃣b4ux1t3@hachyderm.io
2025-03-07

Going live! We begin the march toward the beta release of my Podcast app, #FeedzApp!

Tonight we'll be cleaning up the #android port and building out a settings view.

twitch.tv/b4ux1t3

#DotNet #AvaloniaUI #DevelopInTheOpen #OpenSource #LiveCoding

b4ux1t3 :trek_ds9_sisko:#1️⃣b4ux1t3@hachyderm.io
2025-03-05

I did what can only be described as chicanery to get my #Android port of #FeedzApp working with "live" audio player status with native android playback.

I have my existing audio manager spin up a separate thread which, every 300 milliseconds, hooks into #AvaloniaUI's UI thread to send a message on the message bus to request the appropriate data, which my android service responds to on that selfsame thread.

This was the only way I could see to get this working short of trying to run my own dispatcher.

I'd love to see how other people are doing this. I'm worried the media-style notification will cause issues here.

#DotNet

b4ux1t3 :trek_ds9_sisko:#1️⃣b4ux1t3@hachyderm.io
2025-03-05

Going live! Adding a media player service to my podcast application's #Android port!

twitch.tv/b4ux1t3

#DotNet #Programming #LiveCoding #DevelopInTheOpen #CSharp #AvaloniaUI #FeedzApp

b4ux1t3 :trek_ds9_sisko:#1️⃣b4ux1t3@hachyderm.io
2025-03-04

Tonight on stream, I'm going to be implementing my _third_ audio back end for #FeedzApp! Don't worry, this is the last time, because I'll be implementing the #Android media player!

By the end of the night, I expect to have a working Android application which can surface a media-style notification (which you're familiar with if you're an android user!)

Come for the Android, stay for the #DotNet and #AvaloniaUI! Stream starts at roughly 8:30 PM Eastern.

twitch.tv/b4ux1t3

#Programming #LiveCoding #OpenSource #DevelopInTheOpen

b4ux1t3 :trek_ds9_sisko:#1️⃣b4ux1t3@hachyderm.io
2025-03-01

Tonight I have two plans related to #FeedzApp:

1. try to get a media-style notification going on android. I want to at least make it so I can pause from the notification drawer, because having to task switch back to my app lie it's 2012 is annoying.
2. Work on the look and feel of everything. I need to make the app beautiful, because I'm not doing #AvaloniaUI justice right now.

b4ux1t3 :trek_ds9_sisko:#1️⃣b4ux1t3@hachyderm.io
2025-02-28

If you were watching the stream last night, you know I was having some issues getting my #FeedzApp #Android pipeline to work correctly.

I managed to get it working this morning before work!

You can find the (developer-cert signed) APK file here: gitlab.com/b4ux1t3/FeedzApp/-/

I wouldn't call the Android port "stable" or "worth installing right now", but it's there, and it runs great on my 8-year-old kindle fire!

I need to add some android-related issues to the 0.1.0 (beta) milestone, but I think we're making GREAT progress.

#DotNet #AvaloniaUI #ApplicationDevelopment

b4ux1t3 :trek_ds9_sisko:#1️⃣b4ux1t3@hachyderm.io
2025-02-28

Going live! Working on the #Android port for my Podcast application, #FeedzApp!

Come for the cute android, stay for the #dotnet
twitch.tv/b4ux1t3

#DevelopInTheOpen #Programming #LiveCoding #OpenSource #CSharp #AvaloniaUI

b4ux1t3 :trek_ds9_sisko:#1️⃣b4ux1t3@hachyderm.io
2025-02-27

On Tuesday I built the audio player view for #FeedzApp live on stream. You can watch the VOD here: twitch.tv/videos/2391268591

Tonight, I'll be swapping out the Audio library from SDL3 to libVLC and getting the android version in a more-or-less working state!

The fun begins at around 8:30 PM Eastern.

twitch.tv/b4ux1t3

#DotNet #AvaloniaUI #OpenSource #Prgramming #LiveCoding #AndroidDevelopment #DevelopInTheOpen

b4ux1t3 :trek_ds9_sisko:#1️⃣b4ux1t3@hachyderm.io
2025-02-26

Going live! Building the player view for my podcast application, #FeedzApp!

Come join in and have opinions!

twitch.tv/b4ux1t3

#AvaloniaUI #DotNet #OpenSource #DevelopInTheOpen #CSharp #Programming #IndieDev #UIDevelopment

b4ux1t3 :trek_ds9_sisko:#1️⃣b4ux1t3@hachyderm.io
2025-02-25

Tonight, at roughly 8:30 PM Eastern, I'll be putting together an #AvaloniaUi view to control the audio playback for my podcast application, #FeedzApp, live on stream!

twitch.tv/b4ux1t3

#DotNet #LiveCoding #Programming #IndieDev #OpenSource #DevelopInTheOpen #CSharp #SDL3

b4ux1t3 :trek_ds9_sisko:#1️⃣b4ux1t3@hachyderm.io
2025-02-25

Last week on the stream, I wired up #SDL3 to #DotNet and got my podcast application, #FeedzApp, playing audio on every platform SDL supports (read: all of them).

Tonight, at roughly 8:30 PM Eastern, I'll be putting together an #AvaloniaUi view to control the audio playback, again, live on stream!

twitch.tv/b4ux1t3

And since it's been asked on the stream: No, I don't use any LLM-based tools, at all. Literally zero. Not even as a search aid.

Every bit of code you see on the screen is code I wrote myself, and I'm happy to explain any line!

#LiveCoding #Programming #DevelopInTheOpen #NoAI #OpenSource

2025-02-21

Nothing quite says productive than discovering a big heavily developed in the wild Avalonia app (github.com/Nexus-Mods/NexusMod), figuring out how they did view model injection with the Microsoft ServiceProvider, and then distilling down as much of the code as possible for your own project. Totally didn’t spend an entire day refactoring something to figure it all out. Totally won’t be spending a day today to make a dotnet template to scaffold this for me in future.

Now if I can figure out how to hijack Avalonias design time loader to also resolve from a DI container that would be aces, but sadly there’s no way to hook into that internal code from what I can see.

Yet.

All I need to do is get it to branch into pulling from service registration and it should be possible

#csharp #dotnet #avaloniaui #avalonia

b4ux1t3 :trek_ds9_sisko:#1️⃣b4ux1t3@hachyderm.io
2025-02-21

Going Live! We're going to try to get podcast audio to play in #DotNET and #AvaloniaUI!

Will b4ux1t3 get the shiny new SDL3 bindings working? Find out on tonight episode of B4uxy Does Stupid Things With a Computer!

twitch.tv/b4ux1t3

#OpenSource #DevelopInTheOpen #CSharp #IndieDev #Programming

b4ux1t3 :trek_ds9_sisko:#1️⃣b4ux1t3@hachyderm.io
2025-02-20

Tonight, I'll be streaming more ticket bashing for my podcast management application, #FeedzApp!

I think we're going to dive in to trying to _play audio_ from within the application! I've selected Sdl3 as my library of choice (for now).

Though, I'll be starting the stream with a little bit of light #art as I draw up a quick icon for the application!

Tune on in at 8:30 PM Eastern over on twitch.tv/b4ux1t3!

#DotNet #LiveCoding #Programming #IndieDev #OpenSource #DevelopInTheOpen #CSharp #AvaloniaUI

b4ux1t3 :trek_ds9_sisko:#1️⃣b4ux1t3@hachyderm.io
2025-02-19

Aaaaaay, we finally have notifications when episodes are done downloading!

Woo!

#DotNet #AvaloniaUI #FeedzApp

A screenshot of my podcast application, showing the details and episode list on one side, and a list of download complete notifications on the other side.
b4ux1t3 :trek_ds9_sisko:#1️⃣b4ux1t3@hachyderm.io
2025-02-19

Okay, I've searched and searched for this. . .but I'm going to ask.

In #AvaloniaUI, I need to have a specifically-sized grid row in order to stick a scroll view in it. I need it to take up the entire height, but _only_ up to the height of the viewport that's remaining after the grid row on top of it. Essentially, I need:
```xaml
<Grid RowDefinitions="Auto, 100%">
</Grid>
```

where that 100% is _only_ within the dimensions of the parent control.

Why is this difficult?

#DotNet

Client Info

Server: https://mastodon.social
Version: 2025.04
Repository: https://github.com/cyevgeniy/lmst