4

如何使 RichTextBox 自动调整大小?我希望我的富文本框适合我分配给它的任何文本,而没有滚动条。谢谢。

4

3 回答 3

1
        Bitmap objBmpImage = new Bitmap(1, 1);

        int intWidth = 0;
        int intHeight = 0;

        // Create the Font object for the image text drawing.
        Font objFont = new Font("Arial", 20, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Pixel);

        // Create a graphics object to measure the text's width and height.
        Graphics objGraphics = Graphics.FromImage(objBmpImage);

        // This is where the bitmap size is determined.
        intWidth = (int)objGraphics.MeasureString(sImageText, objFont).Width;
        intHeight = (int)objGraphics.MeasureString(sImageText, objFont).Height;

您已经有字符串来设置文本框。首先,您可以像上面一样计算来测量richtextbox的适当大小。您可以在文本框中设置 intWidth 和 intHeight。我认为这对你很有帮助。

于 2012-04-27T08:54:52.703 回答
1

HorizontalAlignmentand设置为VerticalAlignmentStretch(这是默认设置)以外的其他值。这将使 TextBox 缩小以适合其内容。如果你然后将它粘在StackPanel其中OrientationHorizontal它不会垂直滚动,而是被它的包含面板剪裁,我认为这就是你所追求的。如果您希望包含面板将自身调整为文本,那么您需要相应地配置面板

于 2012-04-27T08:57:26.560 回答
-1

尝试使用 ViewBox

<Viewbox>
    <RichTextBox />
</Viewbox>
于 2012-06-28T09:34:45.483 回答