Doit-il être possible de lier une zone de liste déroulante WPF à une classe. J'ai une classe qui implémente IEmunerable et IEnumerator et contient une liste d'objets, comme suit:WPF ComboBox Databound à une classe
class MyClass
{
public string Title { get; set; }
public string Directory { get; set; }
public MyClass(string title, string directory)
{
Title = title;
Directory = directory;
}
}
class MyClasses : IEnumerable, IEnumerator
{
private List<MyClass> allClasses;
private int position = 0;
public List<MyClass> GetClasses()
{
allClasses = new List<MyClass>()
{
new MyClass("example1", "dir1"),
new MyClass("example2", "dir2")
};
return allClasses;
}
public IEnumerator GetEnumerator()
{
return (IEnumerator) this;
}
public object Current
{
get
{
return allClasses[position];
}
}
public bool MoveNext()
{
position++;
return (position < allClasses.Count());
}
public void Reset()
{
position = -1;
}
}
Alors maintenant, je veux lier à un combobox WPF. Voici ce que j'ai, ce qui ne fonctionne pas (je place obtenir une liste des noms de type des objets):
allClasses.GetClasses();
cboTest.ItemsSource = allClasses;
cboTitle.SelectedValue = "Title";
Quelqu'un peut-il me dire comment mettre en œuvre cette liaison?