我在函数中使用object时遇到问题。在Form2中我将对象传递给Form3:
DaneDelegacja Dane = new DaneDelegacja();
Dane.MiejsceDocelowe = textBox1.Text;
Dane.GodzinyWDelegacji = differenceInHours;
// Create a new instance of the Form3 class
Form3 nocleg = new Form3(Dane);
Form3
public Form3(DaneDelegacja Dane)
{
InitializeComponent();
}
并且在Form3上的函数button1_click中我无法使用该对象“Dane”,因为
“错误1名称'Dane'在当前上下文中不存在”
private void button1_Click(object sender, EventArgs e)
{
Dane.NoclegRyczalt = textBox1.Text;
Dane.NoclegRachunek = textBox2.Text;
// Create a new instance of the Form4 class
Form4 posilki = new Form4();
// Show the settings form
posilki.Show();
this.Hide();
}
感谢您的帮助:)
答案 0 :(得分:2)
您正在传递DaneDelegacija类的实例,但是您不能将对Dane的引用保存到Form3。
在Form3中,您需要创建一个属性: DaneDelegacija dane;
在Form3(DaneDelegacija Dane)中,您应该将该属性设置为:
dane = Dane; //from your constructor
然后致电:
dane.NoclegRyczalt .. etc
答案 1 :(得分:2)
您必须将其存储在Form3
内。创建一个字段/属性,并在构造函数中分配Dane
的值:
public class Form3 : Form
{
...
private readonly DaneDelegacja Dane;
public Form3( DaneDelegacja Dane )
{
this.Dane = Dane;
InitializeComponents();
}
}