こんにちは、Silverlight アプリケーションで解像度に依存しない UI が必要です。暗黙的にサポートしますか、それとも ScaleTransform を実行するコードの背後で注意する必要がありますか?
複数のブラウザもサポートしますか?
前もって感謝します。
こんにちは、Silverlight アプリケーションで解像度に依存しない UI が必要です。暗黙的にサポートしますか、それとも ScaleTransform を実行するコードの背後で注意する必要がありますか?
複数のブラウザもサポートしますか?
前もって感謝します。
Silverlight Toolkit の ViewBox コントロールを使用して、スケール変換を行うことができます。サポートされているすべてのブラウザで動作します。
また、UserControl の幅と高さを Auto に設定 (またはそれらを削除) し、設定したルール (通常は Grid コントロールを使用) に合わせて UI を拡大 (サイズ変更は不可) することもできます。
さて、Silverlight でサイジングを指定できる暗黙的なメソッドを利用できるすべてのメソッドの概要を説明しようと思いました。
コントロールのオプションのStretch
設定を使用して何かを定義する場合:VerticalAlignment
<TextBox Grid.Column="0" Grid.Row="0" VerticalAlignment="Stretch" HorizontalAlignment="Stretch"/>
UIElement は、親コントロールで利用可能なすべてのスペースを占めるように引き伸ばされます。このような別の設定は、次のようにグリッドの列幅または行の高さを定義するようなことを行うことです:
<ColumnDefinition Width="*"/>
これにより、画面上で使用可能なすべてのスペースが占有されます。
グリッドの列と行を比率形式で拡大できます。
<RowDefinition Height="3*"/>
<RowDefinition Height="2*"/>
これにより、2 番目の行が 2 ピクセル増えるごとに、最初の行の高さが 3 ピクセル増加します。
次に、次のようなオプションを使用できますAuto
<ColumnDefinition Width="Auto"/>
これにより、サイズ要件に従って UIElement が大きくなります。要素の子がより大きなサイズを必要とする場合、要素はより多くの画面スペースを占有します。
そして最後に:
<TextBox Grid.Column="1" Grid.Row="0" Height="100" MinWidth="200" MaxWidth="400" x:Name="text"/>
これらは固定値であり、要素が幅 400 ピクセルを超えず、200 ピクセルを下回らない解像度が指定されていることを保証します。また、要素の高さが常に 100px であることも示しています。これは、解像度が変化しても拡大または縮小したくないボタンなどの要素に役立ちます。
ScrollViewer
最後に、画面外の要素をスクロールできるようにするために、おそらく全体を a で囲みたいと思うでしょう。これは、ビューが画面上で使用可能なスペースよりも多くのスペースを必要とする場合、または要素が に設定されている場合に発生する可能性がありますAuto
。