プロが教えるわが家の防犯対策術!

C#でWindowsアプリケーションを作成しています。

ユーザーコントロールでカスタマイズしたボタンを作成しました。
また、そのボタンを動的に配置していく処理を作成しました。
ボタンに表示するボタン名(文字列)が長いものもあるので、改行を
させようと思い、以下のようなコードを書きました。

UCtl.BT_Button1.Text = "あ" + Environment.NewLine + "い";

また、このユーザーコントロール「UCtl」は以下の配列に格納します。

cControl1 = new Control[5];

その後、パネルの上に追加していっています。

wPanel.Controls.Add(cControl1[0]);
wPanel.Controls.Add(cControl1[1]);

しかし、期待する結果”あ”改行”い”と表示されず、”あ”のみが表示されます。

原因として考えられることがお分かりの方がいらっしゃればお教えいただきたいです。


以上です。

A 回答 (1件)

どうやら、Buttonのテキストは、ボタンに十分な高さが無いと、


一部が見える訳ではなく、その行が全て表示されないようです。
例えば、私の環境で「MS ゴシック 9pt」の場合、高さが32px以上無いと
"い"が表示されませんでした。

繰り返すと、この例では、31pxまでは"い"が全く見えず、
32pxになったとたんに"い"の全体が見えるようになりました。
あなたも、Buttonの高さを一度確認してみて下さい。
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aを見た人はこんなQ&Aも見ています


このQ&Aを見た人がよく見るQ&A