2016-10-08 22 views
-2

私は問題があり、これを解決できません。私はいくつかの助けに感謝します。文字列名によるオブジェクトのインスタンス化と呼び出し

public Person(string givenName, string givenAddress) 
{ 
    name = givenName; 
    address = givenAddress; 
} 

私はテキストボックスやコールからの入力文字列を使用してクラスのインスタンスを作成したいと思います: だから、私は、コンストラクタと一緒にそのメソッドとプロパティを持つ「人のクラスが含まれているのWinFormを作成しましたその方法の後の段階で.setName(txtName.text).setAddress(txtAddress.text)です。

「人から作成された各オブジェクトは

List<Person> listPerson = new List<Person>(); 

リスト内に格納されますどのように私は、後に特定のオブジェクト名とそのメソッドを呼び出すことができ、そしてどのように私は、入力文字列を経由してオブジェクトを作成できますか?

+1

あなたは_CREATEで入力STRING_経由でオブジェクトを意味していますかを説明してください – Steve

+0

ユーザがテキストボックスにテキストを入力する場所。この値は、オブジェクトの作成に使用されます。例えば。 Personテキストボックス(ただし、これは明らかに機能しません)。 – JLe

+0

したがって、ユーザーが "Person"と入力すると、Personクラスのインスタンスを作成しますか?しかし、名前と住所のプロパティはどうですか?このようにして作成されたインスタンスは空になります – Steve

答えて

3
あなたが初心者のC#の本やチュートリアル(数十オンラインで利用可能)を読むことから始めて

public class Person 
{ 
    public string Name { set; get; } // property with auto setter and getter 
    public string Address { set; get; } // property with auto setter and getter 

    public Person(string givenName, string givenAddress) 
    { 
     Name = givenName; 
     Address = givenAddress; 
    } 
} 

使用法:

List<Person> listPerson = new List<Person>(); 
var person1 = new Person(textBoxName.Text, textBoxAddress.Text); 
listPerson.Add(person1); 

string name = person1.Name; // get name 
string address = person1.Address; // get address 
+0

@JLe 'textBoxName.Text'と' textBoxAddress.Text'は、UIコントロールから読み込まれた入力文字列サンプルです。 – user3185569

+0

listPerson内に複数のオブジェクトをvar名として別の文字列で格納するにはどうすればよいですか? – JLe

+0

@JLeこれは非常に基本的なOOPの質問です、私はあなたがチュートリアルを取得する必要があると思います。その行をコピーし、別の一意の識別子を使用するだけで簡単です。 'var person2 = ....'そして 'listPerson.Add(person2);'となります。それはそれと同じくらい簡単です。 – user3185569

関連する問題