Winform中怎样跨窗体获取另一窗体的控件对象(c#form1窗体如何和form2窗体里的控件公共使用)

网友投稿 395 2022-08-02

场景

Winform中实现跨窗体获取ZedGraph的ZedGraphControl控件对象:

https://blog.csdn.net/BADAO_LIUMANG_QIZHI/article/details/101375325

之前写过使用存取全局对象的方式去跨窗体获取控件对象。

在主窗体中有一个ZedGraphControl控件,如果要在本窗体获取此控件对象则通过:

this.zedGraphControl1

其中zedGraphControl1是控件ZedGraphControl的name属性。

如果在另一个窗体中获取此控件对象并对其进行属性设置的话,正常逻辑是

声明主窗体对象main,然后main.zedGraphControl1去调用。

但是试过之后发现却不能对其属性进行更改。

因为每次new 出来是一个新的对象,并不是想获取的控件对象

注:

博客主页:

https://blog.csdn.net/badao_liumang_qizhi

霸道的程序猿

获取编程相关电子书、教程推送与免费下载。

实现

现在要在FrmPDFOption这个窗体中获取MainViewContent这个窗体的zedGraph控件。

在MainViewContent窗体中,声明一个public的静态的当前窗体对象:

public static MainViewContent mainViewContent;

然后在MainViewContent的构造方法中将this即当前窗体对象赋值给上面的窗体对象:

public MainViewContent()

{

InitializeComponent();

mainViewContent = this;

}

然后在要调用当前MainViewContent的窗体中获取其控件:

System.Drawing.Image image = MainViewContent.mainViewContent.zedGraphControl1.GetImage();

这里是直接获取MainViewContent中zedGraphControl1的image对象。

版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:FastReport的模板文件frx文件啊怎样打开并编辑修改(fastreport文本控件)
下一篇:Winform中使用FastReport的PictureObject时通过代码设置图片源并使Image图片旋转90度
相关文章

 发表评论

暂时没有评论,来抢沙发吧~