複数のTextBoxコントロールを含むフォームがあります。マルチラインがtrueに設定されているものもあれば、noに設定されているものもあります。大きなフォントを使用すると、テキストの配置が異なることが明らかになります。複数行がtrueの場合、テキストの周囲に何らかの追加の余白が表示されます。次のコードフラグメント
TextBox textBox = new TextBox();
textBox.Text = "Test";
textBox.Font = new Font("Segoe UI", 16);
Console.WriteLine("Single Line:" + textBox.GetPositionFromCharIndex(0));
textBox.Multiline = true;
Console.WriteLine("Multi Line:" + textBox.GetPositionFromCharIndex(0));
出力シングルライン:{X = 1、Y = 0}マルチライン:{X = 7、Y = 1}
私の質問は次のとおりです。マルチラインモードでこのマージンが追加されるのはなぜですか?これを回避/制御できますか?
マルチラインモードのテキストは次のように描画されることをすでに知っています
TextFormatFlags.TextBoxControl | TextFormatFlags.WordBreak | TextFormatFlags.NoClipping
シングルラインモード中
TextFormatFlags.TextBoxControl | TextFormatFlags.NoPadding | TextFormatFlags.SingleLine
使用されている。TextBoxで使用されるTextFormatFlagsを制御する方法はありますか?
私の質問に答えるためにあなたが尽力してくれてありがとう!