Winforms Привязка ComboBox SelectedItem к свойству объекта

У меня есть два простых класса:

public class Customer
{
    public String CustomerID { get; set; }
    public String Forename { get; set; }
    public String Surname { get; set; }
}

а также

public class Order
{
    public String OrderID { get; set; }
    public Decimal Value { get; set; }
    public Customer OrderedBy { get; set; }
}

Затем я создаю список объектов Customer:

List<Customer> customers = new List<Customer>();
customers.Add(new Customer() { CustomerID = "1", Forename = "John", Surname = "Smith"});
customers.Add(new Customer() { CustomerID = "2", Forename = "Jeremy", Surname = "Smith" });

И у меня есть поле со списком, для которого я устанавливаю источник данных, чтобы быть моим списком клиентов, и DisplayMember, чтобы быть свойством Forename объекта Customer:

comboBox1.DisplayMember = "Forename";
comboBox1.DataSource = customers;

И в результате получается комбинированное окно с двумя элементами: «Джон» и «Джереми». До сих пор я не слишком смущен.

Однако я хотел бы иметь возможность установить свойство «OrderedBy» экземпляра Order на основе выбора из Combobox. Могут ли сложные типы быть привязаны к ComboBox, как это?

Я пробовал это, но, похоже, не обновляет свойство OrderedBy экземпляра Order:

Order myOrder = new Order();
comboBox1.DataBindings.Add("SelectedItem", myOrder, "OrderedBy");

Я не знаю, возможно ли то, что я пытаюсь сделать, или это выходит за рамки возможностей привязки данных в WinForms.

Я хотел бы избежать необходимости обновлять мой объект Order как часть обработчика событий в ComboBox и по возможности использовать только привязку данных.

Ответы на вопрос(1)

Ваш ответ на вопрос