Winform中实现跨窗体获取ZedGraph的ZedGraphControl控件对象
<h1>场景</h1><p>Winforn中设置ZedGraph曲线图的属性、坐标轴属性、刻度属性:</p>
<p>https://blog.csdn.net/BADAO_LIUMANG_QIZHI/article/details/100112573 </p>
<p>在主窗体中有一个ZedGraphControl控件,假如要在本窗体获取此控件对象则通过:</p>
this.zedGraphControl1
<p> </p>
<p>此中zedGraphControl1是空间ZedGraphControl的name属性。</p>
<p><div align="center"></div></p>
<p> </p>
<p> </p>
<p>假如在另一个窗体中获取此控件对象并对其进行属性设置的话,正常逻辑是</p>
<p>声明主窗体对象main,然后main.zedGraphControl1去调用。</p>
<p>但是试过之后返现却不能对其属性进行更改。</p>
<p>注:</p>
<p>博客主页:<br />https://blog.csdn.net/badao_liumang_qizhi<br />关注公众号<br />霸道的程序猿<br />获取编程相干电子书、教程推送与免费下载。</p>
<h1>实现</h1>
<p>在包罗ZedGraphControl对象的主窗体中的load事件中将this.zedGraphControl1赋值给一个全局属性,然后在</p>
<p>另一个窗体中调用全局属性即可。</p>
<p>在load事件中:</p>
Global.zedGraphControl1 = this.zedGraphControl1;
<p> </p>
<p>全局属性声明:</p>
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; }
}
}
}
<p> </p>
<p>在另一个窗体中调用:</p>
DataChartHelper.RefreshPane(Global.zedGraphControl1);
<p> </p><br><br/><br/><br/><br/><br/>来源:<a href="https://www.cnblogs.com/badaoliumangqizhi/archive/2019/09/25/11586217.html" target="_blank">https://www.cnblogs.com/badaoliumangqizhi/archive/2019/09/25/11586217.html</a> edGraph曲线图的属性、坐标轴属性、刻度属性:
https://blog.csdn.net/BADAO_LIUMANG_QIZHI/article/details/100112573
在主窗体中有一个ZedGraphControl控件,假如要在本窗体
页:
[1]