微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

在C#中创build一个类对象

我试图创build一个类的对象,但它似乎并没有工作,我不禁觉得我从JAVA的angular度来看这个:

public partial class Form1 : Form { public Form1() { InitializeComponent(); PortChecks PortCheckObject = new PortChecks(); } private void testCheck_Click(object sender,EventArgs e) { PortCheckObject.MyMethod(); }

使用PortCheckObject调用我的方法MyMethod时,可能会出错

(PortChecks是类名)

在特定的桌面上启动进程

创build一个应用程序钩子?

如何asynchronous打开Windows中的文件

为什么我的控制台应用程序有命令历史?

如何找出EventProperty的名字?

.NET EXE和DLL之间的堆栈/堆区别

以前的方法仍然写入数据到文本文件,而方法的新实例正在运行C#

如何在C#中监视Fileaccess

根据屏幕分辨率调整窗体控件的大小

Control.FindForm和ContainerControl.ParentForm有什么区别?

这是因为它超出了testCheck_Click的范围

public partial class Form1 : Form { PortChecks PortCheckObject = new PortChecks(); public Form1() { InitializeComponent(); } private void testCheck_Click(object sender,EventArgs e) { PortCheckObject.MyMethod(); } }

PortChecks PortCheckObject在Form1构造函数中是一个局部变量。

将其声明作为Form1类中的一个私有字段。

public partial class Form1 : Form { private PortChecks PortCheckObject = new PortChecks(); public Form1() { InitializeComponent(); } private void testCheck_Click(object sender,EventArgs e) { PortCheckObject.MyMethod(); } }

@詹姆士,

您需要一个名为“PortCheckObject”的类属性,并且可以在类的其他部分访问。

public partial class Form1 : Form { private PortChecks PortCheckObject; public Form1() { InitializeComponent(); PortCheckObject = new PortChecks(); } private void testCheck_Click(object sender,EventArgs e) { PortCheckObject.MyMethod(); } }

这是一个通用的范围问题,而不是Java与C#的问题(因为你的代码在Java中也不行)。 PortCheckObject在Form1()的范围内,而不是testCheck_Click的范围。 尝试以下操作:

public partial class Form1 : Form { private PortChecks PortCheckObject; public Form1() { InitializeComponent(); PortCheckObject = new PortChecks(); } private void testCheck_Click(object sender,EventArgs e) { PortCheckObject.MyMethod(); }

这是范围问题的一个实例。 您的testCheck_Click方法中没有范围。 做出以下更改,它应该工作:

public partial class Form1 : Form { private PortChecks MyPortCheck {get; set;} public Form1() { InitializeComponent(); MyPortCheck = new PortChecks(); } private void testCheck_Click(object sender,EventArgs e) { MyPortCheck .MyMethod(); } ... }

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐