1

現在のインスタンスに基づいて実行時に UI 要素を作成するメンバー関数を持つデータ クラスがあります。現在使用中のテキスト サイズに基づいて出力 UI 要素のサイズを変更できるようにしたいと考えています。レンダリングされたテキストの高さ (ピクセル単位) を確認するにはどうすればよいですか?

具体的には、レンダリングされた「0」の高さの倍数(〜1.5)に基づいて、均一な正方形のグリッドを作成したいと思います。

TextBlock を作成して ActualHeight を取得しようとしましたが、これは常に 0 を返します...おそらく TextBlock が実際に表示されないためです。TextBlock のインスタンスで UpdateLayout を使用しても、ActualHeight 値は更新されませんでした。

別の方法はありますか?

NB 自動サイズ変更は機能しません。これを行うと 0 に縮小する空の要素がいくつかあるためです。現在使用されているフォントのサイズに基づいて、テキストがあるかどうかにかかわらず、すべての要素のサイズを適切に調整する必要があります。

4

1 に答える 1

0

私は Windows 8 / WinRT API セットに精通していませんが、System.Drawing.Graphics.MeasureTextそれでも動作するはずです。

于 2012-12-12T07:24:43.350 に答える