Winform中实现跨窗体获取ZedGraph的ZedGraphControl控件对象
程序员文章站
2023-10-16 21:57:23
场景 Winforn中设置ZedGraph曲线图的属性、坐标轴属性、刻度属性: https://blog.csdn.net/BADAO_LIUMANG_QIZHI/article/details/100112573 在主窗体中有一个ZedGraphControl控件,如果要在本窗体获取此控件对象则通 ......
场景
winforn中设置zedgraph曲线图的属性、坐标轴属性、刻度属性:
https://blog.csdn.net/badao_liumang_qizhi/article/details/100112573
在主窗体中有一个zedgraphcontrol控件,如果要在本窗体获取此控件对象则通过:
this.zedgraphcontrol1
其中zedgraphcontrol1是空间zedgraphcontrol的name属性。
如果在另一个窗体中获取此控件对象并对其进行属性设置的话,正常逻辑是
声明主窗体对象main,然后main.zedgraphcontrol1去调用。
但是试过之后返现却不能对其属性进行更改。
注:
博客主页:
关注公众号
霸道的程序猿
获取编程相关电子书、教程推送与免费下载。
实现
在包含zedgraphcontrol对象的主窗体中的load事件中将this.zedgraphcontrol1赋值给一个全局属性,然后在
另一个窗体中调用全局属性即可。
在load事件中:
global.zedgraphcontrol1 = this.zedgraphcontrol1;
全局属性声明:
public class global { #region 单例实现 private static string _lockflag = "globallock"; private static global _instance; private global() { } public static global instance { get { lock (_lockflag) { if (_instance == null) { _instance = new global(); } return _instance; } } } #endregion public static zedgraphcontrol zedgraphcontrol1; public zedgraphcontrol zedgraphcontrol1 { get { return zedgraphcontrol1; } set { zedgraphcontrol1 = value; } } } }
在另一个窗体中调用:
datacharthelper.refreshpane(global.zedgraphcontrol1);