-1

我正在尝试向 C# 中的 Controls 类添加两种方法,这些类是“UpColor”和“DownColor”,以便我可以根据按钮的状态是“up”还是“down”来设置按钮 BackColor

我尝试过使用扩展方法,但是因为扩展方法是静态的,这意味着每次我选择不同的按钮时,它都会使用以前的按钮向上/向下颜色,而不是它自己的颜色。

有没有办法添加到 Controls 类以便我可以获取/设置颜色?

我决定沿着添加静态类的路线走下去,并为每种方法都有一个字典。这不是我想要的,但我应该做这份工作..

    static class ButtonColors
{
    public static Dictionary<Control, Color> UpColor
    {
        get;
        set;
    }

    public static Dictionary<Control, Color> DownColor
    {
        get;
        set;
    }
}
4

2 回答 2

3

您应该相应地扩展该类:

public ClassWithColors : Control {
  // extended implementation
  public string UpColor { get; set; }
  public string DownColor { get; set; }
  // assuming types, change as needed
}

但是,尚不清楚您在谈论哪个控件类,因此在这里假设为 WinForms。原则上,它对于 ASP.NET 用户控件和诸如此类的东西是相同的。

于 2013-05-30T10:40:51.167 回答
0

尝试制作“方法”,处理按钮并更改其颜色。

于 2013-05-30T10:43:03.643 回答