【问题标题】:Change Control size based on its text font size根据文本字体大小更改控件大小
【发布时间】:2015-01-08 07:18:15
【问题描述】:

我有一个 Win Form,我在运行时更改所有控件的文本字体(字体大小、字体样式等)。

所以,我也可以让标签更改其字体和大小。但是如何更改控件的字体以及根据字体大小调整控件的大小。

我已经更改了所有控件的字体,但在分配后仍然没有反映在表单中。

所以有什么想法吗??

谢谢!

【问题讨论】:

    标签: c# windows winforms forms fonts


    【解决方案1】:

    如果我清楚地理解了您的问题,您是否想要根据文本长度和大小调整表单中文本框的宽度和高度?

    如果是这样,请创建一个 windows 表单并将一个文本框放入表单中,然后将其添加到您的设计器表单中:

    this.textBox1.TextChanged += textBox1_TextChanged;
    

    或者如果您不想将上述代码添加到设计器表单中,只需将其添加到表单的代码中即可:

    public Form1()
            {
                InitializeComponent();
    
                this.textBox1.TextChanged += textBox1_TextChanged;
            }
    
            private void textBox1_TextChanged(object sender, EventArgs e)
            {
                Size size = TextRenderer.MeasureText(textBox1.Text, textBox1.Font);
    
                textBox1.Width = size.Width;
                textBox1.Height = size.Height;
            }
    

    希望这个答案对你有所帮助。

    干杯!

    【讨论】:

    • 您好,我测试了您的代码。文本的字体正在更改。但是文本框的大小仍然没有得到调整。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2017-01-24
    • 2023-03-11
    • 2014-01-30
    • 2011-06-25
    • 2020-08-21
    • 2013-02-22
    • 1970-01-01
    相关资源
    最近更新 更多