ReportViewer でテーブルの列ヘッダーのサイズをプログラムで変更する最良の方法を見つけようとしています。
基本的に、私の現在の解決策は次のとおりです。
ColumnWidth = HeaderCaption_CharacterCount * 0.32
0.32 は、現在のフォント サイズを使用した一般的な文字の推定幅です。問題は、幅が長いキャプションのために多くの空白を残すことです。キャプションの文字数が多いほど、余白が多くなります。
このように見積もる際の問題は、すべての文字が同じ幅ではないことです。良い例は、残りのアルファベットより画面幅が狭い「I」文字です。
誰かがこれを行うためのより良い方法を提案できますか?
編集 これを処理するより良い方法を見つけました。テキストの文字列の幅 (ピクセル単位) を計算するメソッドがあります。
Size = TextRenderer.MeasureText([String], [Font])
私は現在これを実験していますが、有望に見えます。