2010-01-14 140 views
4

我正在做一个C#航空公司的预订项目,通过form1获取用户的详细信息,假设我有一个带有类变量的PassengerDetails类。现在,在按钮的点击,我需要所有这些TextBox值赋给类变量通过函数传递参数

private void btnSubmit_Click(object sender, EventArgs e) 
{ 
    string fn = txtFname.Text; 
    string ln = txtLname.Text; 
    string add = txtAddress.Text; 
    int age = int.Parse(txtAge.Text); 
    submit(fn, ln, add, age); 
} 

我需要把这些传递给函数。我应该如何申报?

+0

请使用更好的变量名称。 'fn'和'ln'不会说太多,'add'是很明显的误导。 'firstname','lastname'和'address'有什么问题?智能感知将在第一次后为您输入。 – CodesInChaos 2011-06-22 07:05:50

回答

0

难道你不能做一个简单的任务吗?

public class MyClass 
{ 
    public string fn; 
    public string ln; 
public string add; 
    public int age; 
} 

提交功能

submit(string fn, string ln, string add, int age) 
{ 
    MyClass myclass = new MyClass(); 
    myclass.fn = fn; 
    myclass.ln = ln; 
    myclass.add=add; 
    mycalss.age = age; 
} 
0

你必须存储你的乘客详细类的实例可以调用一个窗体级变量:

注:伪代码!不要复制和粘贴!

class form1() 
{ 
    private passenger_details = new PassengerDetail() 

    private void button_click() 
    { 
     passenger_details.age = int(nameField.Text); 
    } 
} 
2

创建一个乘客数据的类并将其作为参数传递。

class Passenger 
{ 
    public string FirstName { get; set; } 
    public string LastName { get; set; } 
    public string Address { get; set; } 
    public int Age { get; set; } 
} 

private void AddButton_Click(object sender, EventArgs e) 
{ 
    var passenger = new Passenger 
         { 
          FirstName = txtFname.Text, 
          LastName = txtLname.Text, 
          Address = txtAdd.Text, 
          Age = int.Parse(txtAge.Text) 
         }; 
    AddPassenger(passenger); 
} 
0

你也可以重载构造函数:

class Passenger 
{ 
    public string FirstName { get; set; } 
    public string LastName { get; set; } 
    public string Address { get; set; } 
    public int Age { get; set; } 

    void Passenger() {} 

    void Passenger(string _firstName, string _lastName, string _address, int _age) 
    { 
      this.FirstName = _firstName; 
      this.LastName = _lastName; 
      this.Address = _address; 
      this.Age = _age; 
    } 
} 

那么你的事件将只是在创建它们分配。 (以下代码假设你有一个叫做MyPassenger的全局变量)

private void btnSubmit_Click(object sender, EventArgs e) 
{ 
    this.MyPassenger = new Passenger(txtFname.Text, txtLname.Text, txtAddress.Text, int.Parse(txtAge.Text));  

}