1

私はこれをc#で理解しようとしています。C#を始めたばかりなので、よろしくお願いします。

オブジェクトのリストを別のオブジェクトのリストにコピーしたいと考えています。

こんな感じです。

class Person
    {
        public String fName;
        public String lName;
        public List<House> housesOwned = new List<House>();
        public Student(String FName, String LName)
        {
            this.fName = FName;
            this.lName = LName;

        }
    }

class House
    {
        public String Address;

        public House (String ad1){
            this.Address1 = ad1;

        }
    }

ここで、私のフォームで、House タイプのオブジェクトのリストを作成しました (正確には House タイプのオブジェクトが 2 つあります)。これは、その人が所有する 2 つの家です。

何かのようなもの :List<House> housesList = new List<House>;

基本的に私がやろうとしているのはList<House> housesList、フォームで作成されたList<House> housesOwnedものを、オブジェクト Person のリストであるにコピーすることです。これは、送信ボタンを押したときに発生します。これまでのところ、私はこれを得ました:

List<Person> person = new List<Person>(); // declared at the beginning of the form
.....
private void submit_Click(object sender, EventArgs e)
        {
            person.Add(new Person(personName.Text, personLName.Text));
            //I do not know what comes next to copy the list housesList to the list housesOwned
            MessageBox.Show("Done!");
        }

オブジェクトの家をコピーして、その住所を含めたいと思います。大変お世話になりました。

4

2 に答える 2

2

作成した新しい Person のインスタンスを保持し、そのインスタンスに を追加houseListします。

private void submit_Click(object sender, EventArgs e)
{
        var newPerson = new Person(personName.Text, personLName.Text);
        newPerson.housesOwned.AddRange(houseList);
        person.Add(newPerson);
        MessageBox.Show("Done!");
}
于 2013-02-17T21:56:07.193 に答える