Генерация тестовых данных для привязки

b обратите внимание на то

Это простой метод генерации тестовых данных, который создает коллекцию List<Customer> И затем заполняет ее двумя объектами Customer, С каждым из которых ассоциируются объекты Order. Обратите внимание на то, как код клиента использует коллекцию Orders Класса Customer, Вызывая методы класса List<T>, Например, Add, Просто путем обращения к самому свойству Orders И вызова его методов. Заметьте также, что код устанавливает обратную ссылку от объекта Order На его родительский объект Customer, Просто устанавливая свойство Customer Объекта Order На создаваемый в данный момент экземпляр Customer. Как только список конструирован, он возвращается вызывающей форме и может быть использован для привязки данных. Если вы закодируете все это или загрузите образец CustomBusiness — Objects с сайта этой книги, а потом запустите его, то должны увидеть данные, заполняющие обе сетки. Выбор текущего заказчика в верхней сетке должен определять то, какие заказы будут показаны в нижней, что можно видеть Вы сразу же должны заметить, что если свойство класса с единственным значением является ссылочным типом, как свойство Customer Класса Order, Оно по умолчанию появится в сетке, поскольку пример автоматически генерирует столбцы. К сожалению, появляющиеся при этом значения имеют мало смысла, так как сетка, чтобы получить строковые значения для отображения в ячейке, в процессе форматирования вызывает метод ToString Объектов. То же самое произойдет, если привязать это свойство для отображения в элементе управления ComboBox, ListBox Или TextBox. Метод ToString По умолчанию, наследуемый от базового класса System.Object, Возвращает в качестве строки полностью квалифицированное имя типа, которое, скорее всего, не то, что вы хотели бы показать.

Можно было бы справиться с этим, не генерируя столбцы автоматически и не отображая в сетке свойство Customer. Но В Зависимости от ситуации вам могло бы потребоваться использовать это свойство в сценариях привязки данных, и в этом случае, возможно, вы хотели бы отображать нечто осмысленное, когда оно привязывается к текстовому элементу управления. Это можно сделать просто путем переопределения в своем специальном рабочем объекте метода ToString. В данном случае это означает добавление в класс Customer Переопределения ToString, Которое просто возвращает имя заказчика:

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *