問題タブ [avaloniaui]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
1034 参照

c# - Avalonia UI スケーリングの問題

Avalonia を使用してクロスプラットフォームのデスクトップ MVVM アプリケーションを開発していますが、問題はかなり単純です。

ウィンドウ全体をターゲット デバイスのディスプレイ解像度に合わせたいと思います。たとえば、UI は常にディスプレイの 25 ~ 50% をカバーするようにスケーリングする必要がありますが、それ以上大きくすることはできません。スケーリングには、すべてのフォント サイズ、幅と高さのプロパティなどを含める必要があります。ここで視覚化するために、私の 4K デスクトップでどのように見えるかを示します。

デスクトップ

解像度がかなり低い私のLinuxラップトップでは、次のようになります。

ここに画像の説明を入力

私がやりたいのは、ディスプレイの解像度に応じてすべてを拡大または縮小して、ゴミのように見えないようにし、フォントが常にはっきりと読めるようにすることです(フォントも拡大縮小する必要があります)。 (おそらく UI スケーリング用の WinAPI 呼び出しもありますが、このソリューションは Linux と OSX でも動作するはずです)

これは、Avalonia を使用してどのように実装できますか? または、これを達成するための好ましい方法はありますか?

アプリケーションの幅と高さの比率は一定に保つ必要があり、アプリケーションが画面全体をカバーしてはならないことに注意してください。

これまでの私の考え:

  • おそらく、すべてのサイズ パラメーターのバインドを作成し、何らかの倍率を使用してアプリケーションの起動時に最適なサイズを再計算することもできますが、これには大量の新しいコードが必要であり、フォント サイズを実装するのは面倒です。

  • バインディングや、CSS メディア クエリなどのスタイル プリセットの束を作成することもできますか? それも大変な作業になりますが。

目的の効果を達成するためのより良い方法はありますか?

0 投票する
1 に答える
183 参照

avaloniaui - Avalonia UI の抽象 Adorner (wpf) クラスに似ていますか?

WPF で装飾要素が抽象クラスAdornerを使用して実装されている場合、Avalonia UIでこのオブジェクトの実装を実現する方法は?