c# – 从另一个静态类访问表单方法

c# – 从另一个静态类访问表单方法,第1张

概述所以,我现在几乎没有线索,甚至不确定它是否可能. 我有一个Visual C#Form,它由Program.cs运行(标准方式 – 当然VS完成了所有设置工作). 除此之外,我在一个单独的C#文件中有一个带静态方法的类,只是因为我喜欢将一个类保存在一个文件中. 我的表单代码有一个公共函数: public void print(String text){ rtb_log.appendText 所以,我现在几乎没有线索,甚至不确定它是否可能.
我有一个Visual C#Form,它由Program.cs运行(标准方式 – 当然VS完成了所有设置工作).

除此之外,我在一个单独的C#文件中有一个带静态方法的类,只是因为我喜欢将一个类保存在一个文件中.

我的表单代码有一个公共函数:

public voID print(String text){    rtb_log.appendText("\n" + text);}

在某个时间点,我从另一个类调用静态函数.

是否有可能从我的其他课程实际访问该打印方法?因为它指的是rtb_log(一个富文本框),所以只有实例化才有效,当然也不是静态的.但是由于静态方法只能访问静态成员,所以我在这里有点想法如何在另一个类的表单上附加一些文本.

这里有什么帮助?

解决方法@H_403_18@

But since static methods can only access static members,I’m a little out of IDeas here on how to append some text on my form from another class.

静态成员可以访问实例成员 – 他们只需要知道调用该方法的实例.所以你可以写:

public static voID Foo(OtherForm myOtherForm){    // Do some stuff...    myOtherForm.Print(); // Case changed to comply with naming conventions}

然后,当您调用该方法时,您需要提供相关表单的引用.基本上必须确定要调用哪个实例打印.弄清楚谁拥有这些信息,然后从那里传递信息.我建议不要使用静态变量来保存这些信息. (全局州使代码更少可重用,更难以推理,并且更难以测试.)

编辑:鉴于评论,这听起来像你想要的:

// Within the formprivate voID HandleClick(object sender,EventArgs e){    SomeClass.Staticmethod(this);}
总结

以上是内存溢出为你收集整理的c# – 从另一个静态类访问表单方法全部内容,希望文章能够帮你解决c# – 从另一个静态类访问表单方法所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: https://www.outofmemory.cn/langs/1249263.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-06-07
下一篇 2022-06-07

发表评论

登录后才能评论

评论列表(0条)

保存