C# 从Windows窗体应用程序调用类的方法
我试图调用一个与它的类AHPModel同名的方法,但通过创建该类的实例从Windows窗体接受一个整数参数,但它给了我一个对象引用未设置为对象实例的错误,请您帮助 多谢各位 形式如下:C# 从Windows窗体应用程序调用类的方法,c#,windows-forms-designer,C#,Windows Forms Designer,我试图调用一个与它的类AHPModel同名的方法,但通过创建该类的实例从Windows窗体接受一个整数参数,但它给了我一个对象引用未设置为对象实例的错误,请您帮助 多谢各位 形式如下: private void button6_Click(object sender, EventArgs e) { try { AHPModel model = new AHPModel(3, 3); model.AddCriteria(criteria);
private void button6_Click(object sender, EventArgs e)
{
try
{
AHPModel model = new AHPModel(3, 3);
model.AddCriteria(criteria);
model.AddCriterionRatedChoices(0, night);
model.AddCriterionRatedChoices(1, act);
model.AddCriterionRatedChoices(2, cost);
model.CalculateModel();
GeneralMatrix calcCriteria = model.CalculatedCriteria;
GeneralMatrix results = model.ModelResult;
GeneralMatrix choices = model.CalculatedChoices;
}
catch (System.Exception excep)
{
MessageBox.Show(excep.Message);
}
}
我的班级
public class AHPModel
{
public AHPModel(int n)
{
}
public void CalculateModel()
{
CalculatePriorities();
CalculateChoices();
CalculateFinalResult();
}
}
这是因为您尚未为创建参数化构造函数 AHPModel模型=新AHPModel 3,3 您可以执行AHPModel model=newahpmodel3,3;当你有一个像下面这样的构造函数的类
public class AHPModel
{
public AHPModel(int n)
{
}
public AHPModel(int n,int n)
{
}
public void CalculateModel()
{
CalculatePriorities();
CalculateChoices();
CalculateFinalResult();
}
}
我刚刚意识到我正在将本地声明的数组的空值传递给该方法。但是现在我可以从windows窗体访问目标方法了 这是因为您的AHPModel类没有一个构造函数按照行AHPModel model=new AHPModel3,3;的要求获取2个值;。此外,它没有添加条件的函数,也没有条件变量。此外,它没有添加CriterionRatedChoices的功能,也没有用于夜间、表演和成本的变量。@zizobiko25是您发布的AHPModel类,而实际上是一个。如果是,我想知道您应该得到一个编译时错误,比如:没有接受两个参数的构造函数。。。但是您发布了空引用异常,这是一个运行时异常?请提供一个否,这只是代码的一部分。我已经得到了所需的构造函数和提到的方法@SivaGopalYes,我的代码中有这些构造函数,但在运行代码@UpenderThanks@Upender Singh时仍然收到错误通知,我刚刚意识到我正在将本地声明的数组的空值传递给该方法。但是现在我可以从windows窗体访问目标方法了。