【发布时间】:2012-11-13 03:23:26
【问题描述】:
我正在创建一个将显示多个图形的图形应用程序。这些图表需要访问一些全局数据和一些特定于图表的数据。例如,我希望颜色一致,这样就可以是全局的,但特定的图表可以有不同的网格间距(每个图表)。
我创建了一个带有设置默认值的“主对象”和一个带有每个图形配置选项的派生对象
class GraphMasterObject {
public Color gridcolor = Color.Red;
}
class GraphObject : GraphMasterObject {
public int gridSpacing = 10;
}
现在,根据我的理解,我应该可以做到这一点
GraphObject go = new GraphObject();
Color c = go.gridColor;
如果我更改 go.gridColor,我怎样才能使它在继承自 GraphMasterObject 的所有对象中发生变化?这甚至可能吗?如果不是,还有哪些其他可能的解决方案?类似的东西
GraphMasterObject gmo = new GraphMasterObject();
gmo.gridColor = Color.Blue;
或
GraphObject go = new GraphObject();
go.gridColor = Color.Blue;
【问题讨论】:
-
为什么不使用gridColor的静态属性,而不是将其定义为实例属性?
标签: c# inheritance persistent