0

我有 Form1,它是一个 MDI 表单。在 Form2 (ChildForm) 我有一个富文本框。

我有一个包含“格式”选项的菜单条。在此之下,我有字体、大小和颜色。通过 Font 方法更改字体和大小很容易,但颜色似乎是另一回事。

我也无法直接调用富文本框,因为它处于子表单中,并且在颜色更改时不会创建新的子表单。

//when Black is clicked in Color/Format
private void blackToolStripMenuItem_Click(object sender, EventArgs e)
{
    //change color to black

}

//when Red is clicked in Color/Format
private void redToolStripMenuItem_Click(object sender, EventArgs e)
{
    //change color to red

}


奖金问题:

当您将尺寸更改为大尺寸时,我也遇到了子窗体调整大小的问题。整个子窗体变大而不是文本的大小。如果您返回到较小的文本大小,子窗体将保持相同大小,而richTextBox 会变小。这是文本大小更改的代码。这里有什么想法吗?

//when 8 is clicked in Size/Format
private void toolStripMenuItem2_Click(object sender, EventArgs e)
{
    //change size to 8
    ActiveMdiChild.Font = new Font(ActiveMdiChild.Font.Name, 8);
}

是否需要更改某个属性以防止框重新调整大小?

4

1 回答 1

0

如果您想使用子窗体中的控件,您可以使用该Controls集合并参考richTextBox使用控件的名称。例如,如果我有一个richTextBox名字richTextBox1,我可以使用以下代码从MDI父级引用:

ActiveMdiChild.Controls["richTextBox1"].ForeColor = Color.Blue; 

对于您的奖金问题,我想知道您是否尝试了子项中的 AutoSize 属性并将其设置为 False。

理查德

于 2013-09-23T01:32:46.260 回答