C# 如何使文本框1更改文本框2中文本的字体大小。类似于在google文档或Microsoft word中更改字体大小

C# 如何使文本框1更改文本框2中文本的字体大小。类似于在google文档或Microsoft word中更改字体大小,c#,winforms,C#,Winforms,因此,我有两个文本框,一个用于书写,另一个用于更改字体大小,如何使字体大小文本框使书写文本框中的字体大小更改?对于初学者来说,假设它是一个Windforms应用程序,有两个分别名为“textBox1”和“textBox2”的文本框对象,用一种快速的方法来实现这一点并不难 首先,在forms load事件中,需要设置textBox2的初始值 private void Form1_Load(object sender, EventArgs e) {

因此,我有两个文本框,一个用于书写,另一个用于更改字体大小,如何使字体大小文本框使书写文本框中的字体大小更改?

对于初学者来说,假设它是一个Windforms应用程序,有两个分别名为“textBox1”和“textBox2”的文本框对象,用一种快速的方法来实现这一点并不难

首先,在forms load事件中,需要设置textBox2的初始值

        private void Form1_Load(object sender, EventArgs e)
        {
            textBox2.Text = textBox1.Font.Size.ToString();

        }
然后,您只需通过双击textBox2对象(在可视化编辑器中)或从事件创建者中选择事件,为textBox2创建一个TextChanged事件

最后,要以一种快速且易于分解的方式为初学者处理事件:

        private void textBox2_TextChanged(object sender, EventArgs e)
        { 
            //use try/catch incase user inputs invalid value and cannot parse it as a float
            try
            {
                //Cannot set the Size value of a font, so create a new font with desired size, referencing currrent textBox1.Font properties,
                textBox1.Font = new Font(textBox1.Font.FontFamily.ToString(), float.Parse(textBox2.Text), textBox1.Font.Style, textBox1.Font.Unit, textBox1.Font.GdiCharSet, textBox1.Font.GdiVerticalFont);
                //It worked, textBox2 background color stays white to signify success.
                textBox2.BackColor = Color.White;
            }
            catch (Exception)
            {
                //An exception was thrown parsing input, set textBox2 background to red so user knows this is invalid.
                textBox2.BackColor = Color.Red;      
            }
        }