gpt4 book ai didi

c# - 更改 MDI 窗体的背景

转载 作者:可可西里 更新时间:2023-11-01 08:33:48 24 4
gpt4 key购买 nike

如何在 C# 中更改 MDI 窗体的背景颜色?

我使用背景颜色属性更改了它,但颜色没有改变。

我应该怎么做才能执行此任务?

最佳答案

MDI控件的实际BackGround颜色是基于Windows当前Theme中的颜色。您必须在 WinForm 中物理设置 MdiClient 控件的背景。

    // #1
foreach (Control control in this.Controls)
{
// #2
MdiClient client = control as MdiClient;
if (!(client == null))
{
// #3
client.BackColor = GetYourColour();
// 4#
break;
}
}

编辑 - 添加评论:

  1. 我们需要遍历 MdiParent 窗体中的控件,以找到将窗体设置为 MdiParent 时添加的 MdiClient 控件。 Foreach 只是一个类型通过集合的简单迭代。

  2. 我们需要在表单中找到 MdiClient 控件,为此我们使用“as”关键字在循环中强制转换当前控件。使用“as”关键字意味着如果转换无效,则设置的变量将为空。因此,我们检查“client”是否为空。如果是,则循环中的当前控件不是 MdiClient 控件。只要变量“client”不为 null,我们掌握的控件就是 MdiClient,我们可以设置它的背景颜色。

  3. 将背景颜色设置为您想要的任何颜色。只需将“GetYourColour()”替换为您想要的任何颜色,即 Color.White、Color.Blue、Colour.FromArgb(etc)...

  4. 由于只有 1 个 MdiClient,因此继续循环毫无意义,因为这只会浪费处理时间。因此,我们调用“break”来退出循环。

如果您需要任何其他解释,请告诉我。

关于c# - 更改 MDI 窗体的背景,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1087133/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com