如何从一种表单访问另一种形式的私有方法?
例如,我在Form1中有这个方法:
Form1中:
private void Test (){}
然后如何在Form2中访问该方法(private void Test),以便我在Form2中输入的值将在方法Test中发送?
Test是一个datagridview,在表单2中我必须输入Name并在其中输入相应的值,如果我按下save按钮,它应该自动保存在Form1中的datagridview中。
答案 0 :(得分:5)
private
方法无意在所有的class
之外访问。如果您不在private
,则无法访问class
方法。
最简单的方法是制作private
方法public
public void Test (){}
或者,您必须使用public
包装方法来调用private
方法:
public void TestWrapper() {
Test(); //if test is private
}
然后在Form2
中,您应该拥有instance
Form1
并轻松调用该方法:
//All these are inside Form2
Form1 form1 = new Form1();
//Somewhere in your code
form1.Test(); //if test is public, or
form1.TestWrapper(); //if test is private
但在所有情况下,底线是:
您无法在
private
之外调用class
方法。
答案 1 :(得分:0)
如果您想访问其他表单的方法,则它不能是private
。您需要将它们设为public
才能访问其他形式的方法。
答案 2 :(得分:0)
您无法从其他类访问私有方法。 公开然后你可以通过另一个班级访问它。