オブジェクトのリストを ComboBox にバインドしています。
<ComboBox Name="comboPerson" DisplayMemberPath="Name"/>
コードビハインドは次のようになります。
List<Person> myFriends = new List<Person>()
{
new Person("Jack", "Daniels", 8),
new Person("Milla", "Jovovovich", 35),
new Person("Umma", "Turman", 34)
};
comboPerson.ItemsSource = myFriends;
また、標準のプロパティを使用すると、名前は表示されませんが、get アクセサーを介してプロパティにアクセスすると、機能します。これが私が意味することです:
作業バージョン:
public string Name { get; set; }
public string Surnamge { get; set; }
public int Age { get; set; }
public Person(string name, string surname, int age)
{
this.Name = name;
this.Surnamge = surname;
this.Age = age;
}
非稼働バージョン:
public string Name;
public string Surnamge;
public int Age;
public Person(string name, string surname, int age)
{
this.Name = name;
this.Surnamge = surname;
this.Age = age;
}
問題は、なぜ WPF が標準のプロパティから値を取得できないのかということです。