Экземпляр строки данных

вы можете инкапсулировать расположение и

Экземпляр строки данных сам по себе не знает об экземпляре DataRowView, В который заключен, поэтому не существует способа перейти от строки данных к непосредственной ссылке на DataRowView, Однако трудно представить себе ситуацию, где это могло бы потребоваться.

Чтобы работать с нижележащими данными более свободно, вы можете обращаться к данным косвенно через источник привязки, при этом не будет необходимости в приведении к конкретному типу во время разработки. В классе BindingSource Имеется индексатор, так что вы можете передать индекс для доступа к определенному элементу и получить ссылку на объект: Вы можете обратиться к свойству List, Которое вернет вам ссылку типа IList. Затем вы можете просмотреть элементы коллекции последовательно или индексируя ее через ссылку на IList. Получив ссылку на объект любым из этих способов, вы можете воспользоваться дескрипторами свойств, чтобы получить информацию об объектах, обслуживаемых источником привязки, не зная их типов на этапе проектирования. Вы также можете использовать источник привязки, не привязывая его к конкретному источнику данных. Если для экземпляра источника привязки не был установлен источник данных, вы можете добавлять объекты непосредственно в список, поддерживаемый источником привязки. Для этого можно использовать методы Add И AddNew Класса BindingSource. Метод Add Вставляет элемент в поддерживаемый список. Если в список еще ничего не добавлялось , То первый добавленный элемент определит и тип объектов в List, Поддерживаемом источником привязки. Последующие попытки добавления элементов в список должны передавать объекты того же типа, в противном случае будет выброшено исключение InvalidOperationEx — Ception, Поскольку элементы в списке должны быть однотипными. Установка свойства DataSource Переустанавливает всю коллекцию любой новой коллекцией данных, на которую указывает новое значение свойства, что приводит к потере всех элементов, добавленных вручную при помощи метода Add.

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

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