2

我对 c# 中的 windows 窗体有一点问题。让我们保持简单:我有一个设置默认背景颜色和前景色的方法。我有多种形式,我想从中调用它,我只想要一种方法(保持添加默认背景图像的可能性,等等......)。我应该怎么做?

这是基本代码:

public void LoadGraphics() {
  this.BackColor = Graphics.GraphicsSettings.Default.BackgroundColor;
  this.ForeColor = Graphics.GraphicsSettings.Default.ForegroundColor;
  this.BackgroundImage = new Bitmap(Graphics.GraphicsResources.bg_small);
}
4

2 回答 2

6

创建一个实现该方法的父类并从该父类派生您的表单:

class Foo : Form {
    void LoadGraphics() {
        this.BackColor = Graphics.GraphicsSettings.Default.BackgroundColor;
        this.ForeColor = Graphics.GraphicsSettings.Default.ForegroundColor;
        this.BackgroundImage = new Bitmap(Graphics.GraphicsResources.bg_small);
    }
}

class YourForm : Foo {
    void someFunction() {
        LoadGraphics();
    }
}
于 2012-08-27T14:42:46.207 回答
1

您可以创建一个包含要在表单之间共享的代码的静态类:

static class Utils
{
    public static void ChangeColor(Form form, Color color)
    {
        form.BackColor = color;
    }
}

然后您可以从任何其他形式调用此函数:

Utils.ChangeColor(this, Color.Red);
于 2012-08-27T14:48:45.843 回答